Я только начинаю учить с++
прошу помочь с решением одно задачи)
Нужно написать программу которая вычисляет среднее арефметическое вводимой с клавиатуры последовательности дробных чисел. Количество чисел должно задаваться во время работы программы.
Вот я что то начал но тут не верно подскажите что именно не так
#include <conio.h>
#include <stdio.h>
#include <iostream.h>
void main ()
{
clrscr();
int x,y,X,Y;
for (x=y;x<y;x++);>> y;
cout << "Vvedite chislo";
cin >> X;
Y=X/2;
cout << Y;
}
Другие языки программирования и технологии
Помогите доделать программу
// Visual C++ 2010
#include <iostream>
#include <locale>
#include <conio.h>
using namespace std;
void main()
{
setlocale(LC_CTYPE, "Russian_Russia.1251");
double number, summa = 0;
int limit;
do
{
cout << endl << " Введите количество чисел: ";
cin >> limit;
if (limit < 1)
cout << endl << " Введённое число должно быть больше нуля! " << endl;
}
while(limit < 1);
int n = 1;
do
{
cout << endl << " Введите " << n << "-е вещественное число: ";
cin >> number;
summa += number;
n++;
}
while (n <= limit);
cout << endl << " Среднее арифметическое = " << summa / limit;
_getch();
}
1. Для вывода и вывода в Visual C++ требуется подключать заголовочный файл iostream и пространство имён std.
2. Добиться вывода на русском языке требуется подключить заголовочный файл locale и воспользоваться функцией setlocale(), задав в ней региональные установки.
3. Заданием предусмотрен подсчёт среднего арифметического значения вещественных чисел определённого пользователем количества, значит потребуется две переменных типа double, для вводимого числа и хранения суммы таких чисел, а также целочисленная переменная типа int, для определения количества подсчитываемых чисел.
4. Далее, пользователю следует предложить ввести количество чисел для подсчёта.
5. Так как количество не может быть отрицательным и равным нулю (на ноль делить нельзя!) , необходимо предусмотреть возможность избежать такую ошибку при вводе и информировать об этом пользователя, после чего предложить ему повторить ввод, это позволяет сделать if в цикле do - while.
6. Если ввод корректный то следует в другом аналогичном цикле выполнить ввод и подсчитать сумму введённых чисел. А чтобы определить предел его итераций, потребуется счётчик, для него создадим целочисленную переменную и инициализируем её единицей, т. к. будем использовать её ещё и при выводе информации для пользователя.
7. По окончании цикла выполним вывод результатов вычислений, которые здесь же и выполним, сэкономив на переменной.
8. Функция _getch(), позволяет остановить программу и просмотреть результаты.
P.S.
1. Пользователь при вводе может ввести не число, а строку, для этого нужно все переменные для ввода данных предусматривать строковыми, а патом парсить их и проверять, являются ли они числами, но для начала нужно изучить раздел манипуляций со строками.
2. Региональные параметры определяют разделителем вещественных числ с цифрового блока клавиатуры либо точку, либо запятую. Для ввода вещественных чисел требуется точка, если раскладка клавиатуры русская, то ввод данных вещественного типа будет некорректным, а работа программы непредсказуемой, и результаты искажёнными. Это следует учитывать при тестировании.
#include <iostream>
#include <locale>
#include <conio.h>
using namespace std;
void main()
{
setlocale(LC_CTYPE, "Russian_Russia.1251");
double number, summa = 0;
int limit;
do
{
cout << endl << " Введите количество чисел: ";
cin >> limit;
if (limit < 1)
cout << endl << " Введённое число должно быть больше нуля! " << endl;
}
while(limit < 1);
int n = 1;
do
{
cout << endl << " Введите " << n << "-е вещественное число: ";
cin >> number;
summa += number;
n++;
}
while (n <= limit);
cout << endl << " Среднее арифметическое = " << summa / limit;
_getch();
}
1. Для вывода и вывода в Visual C++ требуется подключать заголовочный файл iostream и пространство имён std.
2. Добиться вывода на русском языке требуется подключить заголовочный файл locale и воспользоваться функцией setlocale(), задав в ней региональные установки.
3. Заданием предусмотрен подсчёт среднего арифметического значения вещественных чисел определённого пользователем количества, значит потребуется две переменных типа double, для вводимого числа и хранения суммы таких чисел, а также целочисленная переменная типа int, для определения количества подсчитываемых чисел.
4. Далее, пользователю следует предложить ввести количество чисел для подсчёта.
5. Так как количество не может быть отрицательным и равным нулю (на ноль делить нельзя!) , необходимо предусмотреть возможность избежать такую ошибку при вводе и информировать об этом пользователя, после чего предложить ему повторить ввод, это позволяет сделать if в цикле do - while.
6. Если ввод корректный то следует в другом аналогичном цикле выполнить ввод и подсчитать сумму введённых чисел. А чтобы определить предел его итераций, потребуется счётчик, для него создадим целочисленную переменную и инициализируем её единицей, т. к. будем использовать её ещё и при выводе информации для пользователя.
7. По окончании цикла выполним вывод результатов вычислений, которые здесь же и выполним, сэкономив на переменной.
8. Функция _getch(), позволяет остановить программу и просмотреть результаты.
P.S.
1. Пользователь при вводе может ввести не число, а строку, для этого нужно все переменные для ввода данных предусматривать строковыми, а патом парсить их и проверять, являются ли они числами, но для начала нужно изучить раздел манипуляций со строками.
2. Региональные параметры определяют разделителем вещественных числ с цифрового блока клавиатуры либо точку, либо запятую. Для ввода вещественных чисел требуется точка, если раскладка клавиатуры русская, то ввод данных вещественного типа будет некорректным, а работа программы непредсказуемой, и результаты искажёнными. Это следует учитывать при тестировании.
ты знаешь что такое среднее арифметическое вообще? сумма всех эл-ов деленная на их количество. Чего тут непонятного? ? Берешь сумму введенных чисел и делишь на их кол-во.
Тот код который написан у тебя вообще не скомпилируется к слову.
Тот код который написан у тебя вообще не скомпилируется к слову.
clrscr - это с паскаля.
for (x=y;x<y;x++);>> y; - это вообще что такое?
cin >> X; - не поздновато ли?) )
Y=X/2; - а это?
cout << Y; -- ну хоть вывели правильно) )
еще нужно освобождать ресурсы - return 0;
есть библиотеки лишние
ПС. вы не сделали абсолютно ничего. так-что я готов выполнить эту программу за 50 рублей) ) постоянным клиентам скидка))
for (x=y;x<y;x++);>> y; - это вообще что такое?
cin >> X; - не поздновато ли?) )
Y=X/2; - а это?
cout << Y; -- ну хоть вывели правильно) )
еще нужно освобождать ресурсы - return 0;
есть библиотеки лишние
ПС. вы не сделали абсолютно ничего. так-что я готов выполнить эту программу за 50 рублей) ) постоянным клиентам скидка))
Не могу понять вашу логику)
И почему у вас после условия for точка с запятой?
И почему у вас после условия for точка с запятой?
Похожие вопросы
- помогите доделать программу по паскалю пожалуйста
- Помогите доделать программу пожалуйста ) На языке Си
- Помогите доделать программу перевод из морзе на Паскале.
- Помогите пожайлуста доделать программу в паскале! Не получается ((
- Как доделать программу в Си?
- помогите доделать код на паскале
- Помогите написать программу со switch в СИ
- как доделать программу?
- Помогите написать программу на С. Тема Составление программ с использованием массивов
- Помогите написать программу выключения компьютера на С++