Задачи: циклы while, do while, вложенные циклы

Мы познакомились с циклами while и do while в C++ и с вложенными конструкциями в циклах. Займёмся решением задач.

1. Организовать беспрерывный ввод чисел с клавиатуры, пока пользователь не введёт 0. После ввода нуля, показать на экран количество чисел, которые были введены, их общую сумму и среднее арифметическое. Подсказка: необходимо объявить переменную-счетчик, которая будет считать количество введенных чисел, и переменную, которая будет накапливать общую сумму чисел.




2. Необходимо суммировать все нечётные целые числа в диапазоне, который введёт пользователь с клавиатуры.




3. Задача посложней. Нарисовать равнобедренный треугольник из символов ^. Высоту выбирает пользователь. Например: высота = 5, на экране

задачи вложенные циклы

Чтобы поддержать наш сайт – нажмите на копилку и выберите любой удобный для Вас способ.

Узнай как на javascript определить мобильный браузер.

Рассылка новых уроков по программированию:

Задачи: циклы while, do while, вложенные циклы
5 (100%) 13 votes

Задачи: циклы while, do while, вложенные циклы: 108 комментариев

  1. Помогите пожалуйста понять задачу с треугольником. Никак не могу понять ее.

    1. Итератор главного цикла входит со значение 0, поэтому в первом вложенном цикле (если произвести соответствующие вычисления) j=1,j=2,j=3,j=4; Так как это цикл отвечает за пробелы, мы получим 4 пробела. После чего итератор(i=0) зайдет во второй цикл, в котором j=1; Второй вложенный цикл отвечает за ‘^’, поэтому этот знак выведется один раз.
      Итератор главного цикла входит со значением 1, поэтому в первом вложенном цикле j=1,j=2,j=3; Соответственно будет 3 пробела. Заходим во второй вложенный цикл: j=3,j=4,j=5; Соответственно выведется три наших знака ‘^’. И так далее…

    1. Да нет, это не помогает, да и не должно помогать. По большому счету это меняет только резервируемую память.
      Я когда завожу дробное число, прога “виснет”…

  2. float kr, kp;
    int kt = 1, kpn = 0, ktn = 0;
    cout <> kr;
    kp = kr;

    for (; kp != 0; kt += 2 , kp–)
    {
    kpn = 0;
    while(kp > kpn) {
    cout < ktn) {
    cout << "^"; ktn++;
    }
    cout << endl;

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *