Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.62/29: Рейтинг темы: голосов - 29, средняя оценка - 4.62
2 / 2 / 0
Регистрация: 05.11.2013
Сообщений: 126
1

Циклы с параметром, постусловием и предусловием

14.03.2016, 19:11. Показов 5570. Ответов 27
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Даётся последовательность чисел 7,9,11,13,14,15,16,17 ... Последовательность заканчиваеться когда их среднее значение станет >=80. И нужно вывести конечное число этой последовательности. Если брать циклы, for, while, do while. то как вывесли именно последнее число и как написать генератор чисел от 7 до >=80?

Добавлено через 12 минут
простите последовательность нечётных чисел 7,9,11,13,15,17,19...
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.03.2016, 19:11
Ответы с готовыми решениями:

Циклы с предусловием и с постусловием (while, do.while)
6. Вводится точность e. Вычислить сумму ряда Вычисления продолжать до тех пор, пока очередное...

Вывести таблицу значений функции используя цикл с параметром, постусловием, предусловием
Вычислить N значений функции y=f(x), используя цикл с параметром, постусловием, предусловием. Вид...

Цикл: Вычисление значения с использованием операторов цикла с параметром, с предусловием, с постусловием
Разработать консольную программу в C++, для нахождения значения Y, с использованием операторов...

Вычислить значение суммы ряда, используя операторы цикла с предусловием, постусловием и параметром
Задание: Вычислить значение суммы ряда, используя операторы цикла с предусловием, постусловием и...

27
2 / 2 / 0
Регистрация: 05.11.2013
Сообщений: 126
14.03.2016, 21:24  [ТС] 21
Author24 — интернет-сервис помощи студентам
skipaq, вот кажется оно. фух всё. на основе всех кодов можно сделать как нада!
Всем большое спасибо!
0
70 / 70 / 52
Регистрация: 24.01.2013
Сообщений: 198
14.03.2016, 21:27 22
Цитата Сообщение от GreenBlaze Посмотреть сообщение
skipaq, вот кажется оно. фух всё. на основе всех кодов можно сделать как нада!
Всем большое спасибо!
Если нужно, могу прокомментить каждую строчку (просто уже редактировать не могу сообщение то), ато немножко мутно выглядит
1
2 / 2 / 0
Регистрация: 05.11.2013
Сообщений: 126
14.03.2016, 21:30  [ТС] 23
было бы здорово. а можете ещё whilе и do while сделать?
0
70 / 70 / 52
Регистрация: 24.01.2013
Сообщений: 198
14.03.2016, 21:34 24
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
 
using namespace std;
 
int main(){
int sum = 0, crt = 0, cnt2 = 1; // sum - сумма элементов, crt - среднее значение, cnt2 - счетчик чисел 
for (int i = 7; crt < 80; i++) { // собсно цикл, начиная от i =7, до тех пор, пока среднее меньше 80, и прибавляем к i 1
    sum += i;// собственно накапливаем сумму всех i
    crt = sum / cnt2; // текущее среднее (в первой итерации будет crt = 7/1, потом уже 16/2
    cout << i << ' '; // выводим числа
    i++; cnt2++; // еще одно увеличение на 1 ( i++ ) т.к. нам нужно к 7 прибавить 2 (еще один инкремент в условии цикла ), ну и cnt2 - счетчик циклов (чисел)
}
cout << "\n\nnumbers: " << cnt2 << "\ncrt = " << crt << "\nsum = " << sum; // выводим
    return 0;
}
while , do while если чуть попозже, как вернусь)
1
165 / 164 / 124
Регистрация: 19.01.2016
Сообщений: 594
Записей в блоге: 1
14.03.2016, 21:38 25
GreenBlaze, Все-ровно не до конца догнал
C++
1
while
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
 
using namespace std;
 
int main(){
int sum = 0, crt = 0, cnt2 = 1, i = 7;
while (crt<80){
    
    sum += i;
    crt = sum / cnt2;
    cout << i << ' ';
    i+=2; cnt2++;
}
cout << "\n\nnumbers: " << cnt2 << "\ncrt = " << crt << "\nsum = " << sum;
system("pause");
    return 0;
}
Добавлено через 1 минуту
C++
1
 do while
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
 
using namespace std;
 
int main(){
int sum = 0, crt = 0, cnt2 = 1, i = 7;
do {
    
    sum += i;
    crt = sum / cnt2;
    cout << i << ' ';
    i+=2; cnt2++;
}while(crt<80);
cout << "\n\nnumbers: " << cnt2 << "\ncrt = " << crt << "\nsum = " << sum;
system("pause");
    return 0;
}
2
2 / 2 / 0
Регистрация: 05.11.2013
Сообщений: 126
14.03.2016, 21:43  [ТС] 26
skipaq,Cadr правда. Большое спасибо! я бы точно не догнал как это всё закодить.
0
70 / 70 / 52
Регистрация: 24.01.2013
Сообщений: 198
14.03.2016, 21:43 27
Cadr,
GreenBlaze, в цикле for , чтобы не использовать два раза инкремент i++
грамотнее сделать так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
 
using namespace std;
 
int main(){
int sum = 0, crt = 0, cnt2 = 1;
for (int i = 7; crt < 80; i++) {
        if (i%2 != 0) {
            sum += i;
            crt = sum / cnt2;
            cout << i << ' ';
            cnt2++;
        }
}
cout << "\n\nnumbers: " << cnt2 << "\ncrt = " << crt << "\nsum = " << sum;
    return 0;
}
т.е. добавить проверку на четность путем получения остатка от деления на 2.

В циклах while и do while, которые выше, все норм)
1
165 / 164 / 124
Регистрация: 19.01.2016
Сообщений: 594
Записей в блоге: 1
14.03.2016, 21:47 28
skipaq, GreenBlaze,
1
14.03.2016, 21:47
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.03.2016, 21:47
Помогаю со студенческими работами здесь

Циклы с предусловием и с постусловием: получить наибольшее целое k, при котором 4k<N
Дано натуральное число N. Получить наибольшее целое k, при котором 4k&lt;N. Функцию для возведения в...

Составить три программы, используя циклы с параметром, с предусловием и постусловием:
Составить три программы, используя циклы с параметром, с предусловием и постусловием: Отрезок ...

Вычислите значение выражения, используя циклы с параметром, предусловием, постусловием
Вычислите значение выражения, используя циклы с параметром, предусловием, постусловием:

Вычислите таблицу значений функции (циклы с предусловием, постусловием и параметром)
Вычислите таблицу значений функции используя операторы цикла с предусловием, постусловием и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
28
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru