Вот программа
#include
#include
#include
using namespace std;
int AVG(int a,int b,int c,int e)
{
int d;
d=(a+b+c+e)/4;
return;
}
int main()
{
setlocale(LC_ALL, "Rus");
int a,b,c,e,d;
cout<<"Функция для вычисления среденего значения:";
cout<<"Введите число:";
cin>>a>>b>>c>>e;
d=AVG(a,b,c,e);
cout<<"Среднее значение:" <<d<<endl;
system("Pause");
return 0;
}
Не могу запретить ввод символов (что-бы выдавалась ошибка при вводе). Пробовал через условие, но у меня не получилось. Есть ещё какие-нибудь способы? Ну или может кто-нибудь сможет это сделать через условие?
Другие языки программирования и технологии
Как запретить ввод символов в программе на языке СИ++?
#include <iostream>
#include <string>
#include <cstdarg>
using namespace std;
int get_int(const string& msg);
double avg(size_t n, ..); // требуется троеточие!!
int main() {
string msg = "Input integer: ";
int a = get_int(msg);
int b = get_int(msg);
int c = get_int(msg);
int d = get_int(msg);
double e = avg(4, a, b, c, d);
cout << "Average: " << e << endl;
cin.sync();
cin.get();
}
double avg(size_t limit, ..) { // требуется троеточие!!
double sum = 0;
va_list args;
int value;
va_start(args, limit);
for (size_t arg = 0; arg < limit; ++arg) {
value = va_arg(args, int);
sum += value;
}
va_end(args);
return sum / limit;
}
int get_int(const string& msg) {
string word;
while (true) {
cout << msg;
cin >> word;
try {
return stoi(word);
} catch (const invalid_argument& event) {
cout << "Error: not number!\n";
event.~invalid_argument();
} catch (const out_of_range& event) {
cout << "Error: overflow!\n";
event.~out_of_range();
}
}
}
#include <string>
#include <cstdarg>
using namespace std;
int get_int(const string& msg);
double avg(size_t n, ..); // требуется троеточие!!
int main() {
string msg = "Input integer: ";
int a = get_int(msg);
int b = get_int(msg);
int c = get_int(msg);
int d = get_int(msg);
double e = avg(4, a, b, c, d);
cout << "Average: " << e << endl;
cin.sync();
cin.get();
}
double avg(size_t limit, ..) { // требуется троеточие!!
double sum = 0;
va_list args;
int value;
va_start(args, limit);
for (size_t arg = 0; arg < limit; ++arg) {
value = va_arg(args, int);
sum += value;
}
va_end(args);
return sum / limit;
}
int get_int(const string& msg) {
string word;
while (true) {
cout << msg;
cin >> word;
try {
return stoi(word);
} catch (const invalid_argument& event) {
cout << "Error: not number!\n";
event.~invalid_argument();
} catch (const out_of_range& event) {
cout << "Error: overflow!\n";
event.~out_of_range();
}
}
}
int main(void)
{
setlocale(LC_ALL, "Rus");
int a,b,c,e,d;
cout<< "Функция для вычисления среденего значения. \n";
cout<< "Введите число:";
cin >>a >>b >>c >>e;
while(cin.fail()){
cin.clear();cin.ignore(INT_MAX,'\n');
cout<< "Можно ввести только цифры. \n";
cout<< "Введите число:";
cin >>a >>b >>c >>e;
}
d=AVG(a,b,c,e);
cout<< "Среднее значение:" <<d <<endl;
system("Pause");
return 0;
}
{
setlocale(LC_ALL, "Rus");
int a,b,c,e,d;
cout<< "Функция для вычисления среденего значения. \n";
cout<< "Введите число:";
cin >>a >>b >>c >>e;
while(cin.fail()){
cin.clear();cin.ignore(INT_MAX,'\n');
cout<< "Можно ввести только цифры. \n";
cout<< "Введите число:";
cin >>a >>b >>c >>e;
}
d=AVG(a,b,c,e);
cout<< "Среднее значение:" <<d <<endl;
system("Pause");
return 0;
}
Вообще за ввод отвечает объект cin, так что его можешь комментарием сделать
Похожие вопросы
- Помогите, пожалуйста, написать программу на языке Си
- Как настроить Python под Си? Как написать программу на языке Си в Python'е ?
- Вопрос о работе программы на языке СИ. Каким будет ответ?
- подскажите как сделать программу на языке СИ(((
- не могу создать программу на языке "си"
- Пожалуйста, ктол может объяснитеб как написать программу на языке Си по этой задаче. С чего начать????
- помогите написать программу на языке Си: В одномерном массиве целых чисел заменить максимальное значение минимальным.
- Совет по программе на языке си (строки)
- надо написать код программы на языке си. помогите кто знает как!
- Программа на языке Си