Перейти к содержанию
СофтФорум - всё о компьютерах и не только

Циклы в C++ (DEV C++)


Рекомендуемые сообщения

помогите найти ошибку, не высчитывается сумма. программа должна записывать числа в массив, если введено не число - то программа выходит из цикла и высчитывает сумму.

#include <iostream>#include <cctype>using namespace std;const int size = 10;int main(){double donation[size];double average = 0.0;double num;cout << "enter 10 donation. for stop enter a letter.\n";int i;for (i = 0; i < size; i++){	cin >> num;	if (isdigit(num))	   donation[i] = num;	   }double total = 0.0;for (int j = 0; j < i; j++)	total += donation[j];cout << total;system("pause");return 0;}
Ссылка на комментарий
Поделиться на другие сайты

#include <iostream>

#include <cctype>

using namespace std;

const int size = 10;

int main()

{

double donation;

double average = 0.0;

double num;

cout << "enter 10 donation. for stop enter a letter.\n";

int i = 0;

cin >> num;

while (isdigit(num) && i < size)

{

donation = num;

cin >> num;

i++;

}

double total = 0.0;

for (int j = 0; j < i; j++)

total += donation[j];

cout << total;

system("pause");

return 0;

}

#include <iostream>

#include <cctype>

using namespace std;

const int size = 10;

int main()

{

double donation;

double average = 0.0;

double num;

cout << "enter 10 donation. for stop enter a letter.\n";

int i = 0;

cin >> num;

while (isdigit(num) && i < size)

{

donation = num;

total += donation

cin >> num;

i++;

}

double total = 0.0;

for (int j = 0; j < i; j++)

total += donation[j];

cout << total;

system("pause");

return 0;

}

блин там выше не тот код

#include <iostream>

#include <cctype>

using namespace std;

const int size = 10;

int main()

{

double donation;

double average = 0.0;

double num;

cout << "enter 10 donation. for stop enter a letter.\n";

int i = 0;

cin >> num;

while (isdigit(num) && i < size)

{

donation = num;

total += donation

cin >> num;

i++;

}

double total = 0.0;

for (int j = 0; j < i; j++)

total += donation[j];

cout << total;

system("pause");

return 0;

}

запарился!!!

где вот в этом коде ошибка? заранее спасибо

#include <iostream>#include <cctype>using namespace std;const int size = 10;int main(){double donation[size];double average = 0.0;double num;cout << "enter 10 donation. for stop enter a letter.\n";int i = 0;cin >> num;while (isdigit(num) && i < size){	  donation[i] = num;	  total += donation[i]	  cin >> num;	  i++;	  	   }double total = 0.0;for (int j = 0; j < i; j++)	total += donation[j];cout << total;system("pause");return 0;}
Ссылка на комментарий
Поделиться на другие сайты

little_greg:

Читай сообщения компилятора. Уже навскидку видно, что после total += donation нет точки с запятой, не говоря уже о том, что total определена и инициализирована уже после ее использования.

Кроме того, digit и number в английском разные вещи - цифра и число: is digit проверяет, является ли введенный символ цифрой, а для проверки, являются ли введенные данные числом, проверяется мнение cin об этом запросом cin.fail(), это возвращает true при ошибке.

Ссылка на комментарий
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...