#cpp #c #cs50
Помогите исправить ошибку в программе по подсчету кол. монет. Когда начинаю компилировать вылетает ошибка: use of undeclared identifier 'n' В программировании я полный новичок, поэтому не исключено, что весь мой код одна сплошная ошибка, но насколько я понял компилятор не видит где описывается n, хотя я описал ее в 15 строке #include#include #include float GetMyFloat(); int main(void) { printf("Сдача: "); float i = GetMyFloat(); float a = 0.25; float b = 0.10; float c = 0.05; float d = 0.01; for (float n = 0; n>0.0; n=n+1) { if (i>=a) { i = i-a; } else if(i>=b) { i = i-b; } else if (i>=c) { i = i-c; } else if (i>=d) { i = i-d; } } printf("\n"); printf("%i\n", n); } float GetMyFloat(void) { float i; do { i = get_float(); while (i<1) { printf ("Число должно быть больше 0!\n"); printf("Сдача: "); i = get_float(); } } while (i<1); return i; }
Ответы
Ответ 1
Вы пытаетесь вывести n все зоны ее существования, обьявите переменную выше попробуйте данный код (код написан без компилятора могут быть ошибки) :) почитайте еще про область видимости #include#include #include using namespace std; float GetMyFloat(); int main(void) { cout << "Сдача: "; float i = GetMyFloat(); float a = 0.25; float b = 0.10; float c = 0.05; float d = 0.01; float n = 0; for (n>=0.0; n++) { if (i>=a) { i = i-a; } else if(i>=b) { i = i-b; } else if (i>=c) { i = i-c; } else if (i>=d) { i = i-d; } } cout << "\n" << "%i\n" << n; } float GetMyFloat(void) { float i; do { i = get_float(); while (i<1) { printf ("Число должно быть больше 0!\n"); printf("Сдача: "); i = get_float(); } } while (i<1); return i; }
Комментариев нет:
Отправить комментарий