Помогите исправить ошибку в программе по подсчету кол. монет. Когда начинаю компилировать вылетает ошибка: use of undeclared identifier 'n' В программировании я полный новичок, поэтому не исключено, что весь мой код одна сплошная ошибка, но насколько я понял компилятор не видит где описывается n, хотя я описал ее в 15 строке
#include<cs50.h>
#include<stdio.h>
#include<math.h>
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;
}
Вы пытаетесь вывести n все зоны ее существования, обьявите переменную выше попробуйте данный код (код написан без компилятора могут быть ошибки) :) почитайте еще про область видимости
#include<cs50.h>
#include<stdio.h>
#include<math.h>
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;
}
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости