1 / 2
Jan 2021

#include <stdio.h>
#include <stdlib.h>

int main()
{
char znak;
int a = 0, b = 0;
int i=0;

while (i <= 10)
{
    
    scanf("%c %d %d", &znak, &a, &b);
    i++;

    switch (znak)
    {
    case '+':
        printf("%d\n", a + b);
        break;
    case '-':
        printf("%d\n", a - b);
        break;
    case '*':
        printf("%d\n", a * b);
        break;
    case '/':
        printf("%d\n", a / b);
        break;
    case '%':
        printf("%d\n", a % b);
        break;
    default:
        break;
    }
}
return 0;

}

Jesli ktos moze mi pomoc bo to poczatki w c i jakos nie moge znalezc sposobu by wpierw odczytac dane a pozniej wyswietlic wszyskie wyniki jak jest w zadaniu.
prosze o pomoc i informacje co robie zle.

  • created

    Jan '21
  • last reply

    Feb '21
  • 1

    reply

  • 401

    views

  • 2

    users

  • 1

    like

Nie programuje w C tylko w C++ ale wydaje mi się że błąd jest podczas wczytywania testów. W zadaniu masz że liczba testów nie przekracza 100 natomiast twój program wczyta tylko 10 więc jak sędzia będzia miał np 50 zestawów testów to wyskoczy błąd. Ustaw while(i<=100) chociaż jak wysyłasz sędziemu to jako argument pętli lepiej ustawić wczytywanie testów w taki sposób while (scanf("%c %d %d", &znak, &a, &b)) sprawi to że wczytają się wszystkie zestawy testów które ma sędzia. Drugi błąd to że podczas odejmowania nie wyświetla ci wyniku reszta operacji dobrze działa z tego co widzę. Mam nadzieję że pomogłem ja się myle to przepraszam