Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.10.2011, 14:23   #1
TURGENEVA
Новичок
Джуниор
 
Регистрация: 16.10.2011
Сообщений: 2
По умолчанию как выглядит примерная примерная блок-схема и алгоритм

для программы "программа позволяющая найти и вывести на экран сумму и среднее арифметическое последовательности чисел,вводимые с клавиатуры.Если вводить ноль,то ввод чисел прекращается.
Программа должна показывать сообщение об ошибки и сообщение о неправильности.
Вводятся только положительные числа" нужно для стандартизации((
TURGENEVA вне форума Ответить с цитированием
Старый 16.10.2011, 14:36   #2
Kartush
Пользователь
 
Регистрация: 07.02.2009
Сообщений: 20
По умолчанию

Цикл repeat until (проверяем равенство числа с 0):
считываем число,
если число не положительно, то переходим к след. итерации (команда Continue),
в одной переменной храним сумму введённых чисел,
в другой - количество введённых чисел
Для нахождения среднего арифметического делим сумму чисел на количество.
Kartush вне форума Ответить с цитированием
Старый 16.10.2011, 15:09   #3
An1ka
C++,DirectX/OpenGL
Форумчанин
 
Регистрация: 09.01.2011
Сообщений: 422
По умолчанию

Код:
 #include <list>
 #include <iostream>
 #include <numeric>

int main() {
  setlocale( LC_ALL, "Rus");
  std::list< float> l;
  float f;
  std::cout << "Введите числа (число 0 - конец ввода): ";
  while ( std::cin >> f, f)
  {
	if ( std::cin.fail()) {
		std::cout << "Ошибка ввода... повторите ввод" << std::endl;
		std::cin.clear();
		std::cin.sync();
		continue;
	}
	 if ( f < 0) {
		 std::cout << "Вы ввели отрицательное число... повторите ввод" << std::endl;
		 continue;
	 }
	l.push_back( f);
  }
  if ( l.size())
	std::cout << "Среднее арифметическое введенных числел: " << std::accumulate( l.begin(), l.end(), 0.0f) / l.size() << std::endl;
  return 0;
}

Последний раз редактировалось An1ka; 16.10.2011 в 15:12.
An1ka вне форума Ответить с цитированием
Старый 16.10.2011, 17:15   #4
gaw4
Форумчанин
 
Регистрация: 31.05.2010
Сообщений: 407
По умолчанию

а зачем это?
Цитата:
Сообщение от An1ka Посмотреть сообщение
Код:
 
	 if ( f < 0) {
		 std::cout << "Вы ввели отрицательное число... повторите ввод" << std::endl;
icq 584 308 611
gaw4 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Алгоритм(блок схема) gold11 Microsoft Office Access 1 01.06.2011 10:43
Интересна примерная цена и сроки. AntonChugr Фриланс 5 26.11.2010 12:41
А как выглядит блок-схема этой программы?? Женечка92 Помощь студентам 1 05.04.2010 17:38
Примерная конфигурация ПК dipladog Компьютерное железо 4 10.01.2010 03:20