Я только начал программировать на C, и я нашел проблему при запуске программы. Ошибка следующая: resto == a % b
;Ошибка: недопустимые операнды типов «float» и «float» to binary 'operator%'
[Error] invalid operands of types 'float' and 'float' to binary 'operator%' in C
#include<stdio.h>
#include <math.h>
char n;
int main(){
printf ("Programma che svolge ogni tipo di operazione aritmetica tra 2 numeri a e b\n'n' per chiudere\nPremere 'invio' per continuare\n");
float a, b, somma, differenza, prodotto, quoziente;
int resto;
while (n=getchar()!='n'){
printf ("Inserisci a\n");
scanf ("%f",&a);
printf ("Inserisci b\n");
scanf ("%f",&b);
somma = a + b;
differenza = a - b;
prodotto = a * b;
quoziente = a/b;
resto = a % b;
printf ("somma = %f + %f = %f\n",a,b,somma);
printf ("differenza = %f - %f = %f\n",a,b,differenza);
printf ("prodotto = %f * %f = %f\n",a,b,prodotto);
printf ("quoziente = %f/%f = %f\n",a,b,quoziente);
printf ("resto = %f %% %f = %d\n",a,b,resto);
}
return 0;
}
Решение есть:
Как вы решаете? Я изменился на int 'resto', но продолжает ошибку ... –
Вы должны изменить тип 'a' и' b' на целое число, а не тип результата. – Draco18s
Вы говорите правильно. Моя проблема - это что-то еще: Если бы я хотел поместить число с запятой и в a и в число с запятой и буквой, как я должен это сделать? Что вы сказали, прекрасно, если a и b являются целыми числами! Должен ли я подать заявку, если? @ Draco18s –