Основы программирования на С++ для начинающих

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

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

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

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

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

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

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

  1. В последнем задании если решить так же как и авторы то там будут баги, я ввел 111 и там строчка не в порядке была крч

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

  3. FIRST
    #include

    int main(void) {
    double val, sum = 0, amount = 0;
    std::cout <> val && val) {
    std::cout << "Val: " << val << '\n';
    ++amount;
    sum += val;
    }
    std::cout << "Total: " << sum << '\n';
    std::cout << "Amount: " << amount << '\n';
    }

    SECOND

    #include ;
    int main(void) {
    int begin, end;
    std::cout <> begin >> end && begin > end)
    {
    if (std::cin.fail()) {
    std::cout < end) {
    std::cout << "First value mast be less than second\n";
    }
    }
    std::cout << "begin: " << begin << ", end " << end << '\n';

    unsigned total = 0;
    for (int i = begin; i <= end; i++) {
    if (!(i % 2)) {
    std::cout << i << ' ';
    total += i;
    }
    }
    std::cout << "\nTotal: " << total << '\n';
    }

  4. Самое легкое решение первой задачи в минимум строк
    void main()
    {
    setlocale(LC_ALL, “ru”);

    int b;
    int a = 1;
    float suma = 0;
    int i = 0;
    for (;i < a;i++)
    {
    a++;
    cout <> b;
    suma += b;
    if (b == 0)
    {
    break;
    }
    }
    cout << "Сумма:" << suma << endl;
    cout << "Средние арефм:" << double(suma / i);

    1. int b;
      int a = 1;
      float suma = 0;
      int i = 0;
      for (;i < a;i++)
      {
      a++;
      cout <> b;
      suma += b;
      if (b == 0)
      {
      break;
      }
      }
      cout << "Сумма:" << suma << endl;
      cout << "Средние арефм:" << double(suma / i); P.S Плохо скопировал.

      1. аааа а это сайт удаляет лол а как тогда вставить)) , если он код убирает))

  5. 2 задача
    int s;
    int start_range;
    int close_range;

    cout <> start_range;
    cout <> close_range;

    for (int i = 0;i < close_range;i++)
    {

    s=start_range % 2;
    if (s !=0)
    {

    cout << start_range << " ";
    }
    if (start_range == close_range)
    {
    break;
    }
    start_range++;

  6. 3 задача с помощью do while(как написано в заголовке):

    #include

    using namespace std;

    int main() {
    setlocale(LC_ALL, “RU”);

    int hight, hight1, amount1, amount = 1, str = 0;

    cout <> hight;

    hight1 = hight;
    cout << endl;

    do {
    amount1 = amount;

    do {
    cout < 0);

    do {
    cout < 0);

    cout << endl;

    str++;
    hight1 = hight – str;
    amount += 2;
    } while (str < hight);

    return 0;
    }

  7. я конечно не эксперт, но вышло как-то так)

    //task 1
    #include
    using namespace std;

    float general = 0;
    float sum = 0;
    float sr;
    float m;
    int main() {
    setlocale(LC_ALL, “RU”);

    for (int i = 0; ; i++)
    {
    cout << i + 1 <> m;

    if (m) {
    sum += m;
    general++;
    }
    else
    {
    sr = sum / general;
    cout << "\nВсего чисел было: " << general << endl << "Общая сумма чисел: " << sum << endl;
    cout << "Среднее арифметическое: " << sr << endl;
    break;
    }
    }
    return 0;
    }

  8. #include
    using namespace std;

    int main()
    {
    setlocale(LC_ALL, “rus”);

    int digit = 0;
    double amount_digit = 0;
    double sum_digit = 0;

    cout << "Введите числа для расчета.\n";
    cout << "0 – закончить ввод чисел.\n\n";
    for (amount_digit = 1; ; amount_digit++)
    {
    cout << "Введите " << amount_digit <> digit;
    sum_digit += digit;

    {
    if (digit)
    amount_digit;

    else if (digit == 0)
    {
    amount_digit–;
    break;
    }
    }
    }
    cout << "Было введено чисел – " << amount_digit << endl;
    cout << "Сумма всех чисел равна – " << sum_digit << endl;
    cout << "Среднее арфиметическое – " << sum_digit / amount_digit << endl;
    return 0;
    }

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

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