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

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

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

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

Добавлено через 12 минут
простите последовательность нечётных чисел 7,9,11,13,15,17,19...
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
14.03.2016, 19:11
Ответы с готовыми решениями:

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

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

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

27
11 / 15 / 8
Регистрация: 12.10.2011
Сообщений: 811
14.03.2016, 19:15
Не совсем понятно что Вы хотите но примерно так например:
C++
1
2
3
4
5
int a;
while(a < 80)
{
вычисления....
};
1
 Аватар для GreenBlaze
2 / 2 / 0
Регистрация: 05.11.2013
Сообщений: 126
14.03.2016, 19:22  [ТС]
И нужно вывести конечное число этой последовательности. Последовательность продолжается до тех пор пока сумма всей последовательности и делённое на количество чисел в этой последовательности будет >или = 80. как генератор последовательности сделать?
0
165 / 164 / 124
Регистрация: 19.01.2016
Сообщений: 594
Записей в блоге: 1
14.03.2016, 19:29
Цитата Сообщение от GreenBlaze Посмотреть сообщение
последнее число и как написать генератор чисел от 7 до >=80?
C++
1
2
3
4
5
 int a=7;
    for (int i=0;i<80;i++){
        a+=2;
        cout<<a<<" ";}
    cout<<endl<<"последнее число: "<<a;
1
 Аватар для GreenBlaze
2 / 2 / 0
Регистрация: 05.11.2013
Сообщений: 126
14.03.2016, 19:34  [ТС]
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
#include "stdafx.h"
#include <iostream>
#include <iomanip>
int a=7;
int main()
{
    for (int i = 0; i<80; i++)
    a += 2;
    cout << a << " ";
    cout << endl << "последнее число: " << a;
    system("pause");
}
так?
0
165 / 164 / 124
Регистрация: 19.01.2016
Сообщений: 594
Записей в блоге: 1
14.03.2016, 19:39
GreenBlaze, это только цикл... 7,9,11,13,14,15,16,17 ...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
 
int main()
 
{
    int a=7;
    for (int i = 0; i<80; i++)
    a += 2;
    cout << a << " ";
    cout << endl << "последнее число: " << a;
    system("pause");
    return 0;
}
1
 Аватар для GreenBlaze
2 / 2 / 0
Регистрация: 05.11.2013
Сообщений: 126
14.03.2016, 19:42  [ТС]
а почему выводиться число 167 разве ограничение не 80? и как из этого цика результат перенести во второй который будет считать среднее значение до >=80?
0
165 / 164 / 124
Регистрация: 19.01.2016
Сообщений: 594
Записей в блоге: 1
14.03.2016, 19:45
GreenBlaze,
Цитата Сообщение от GreenBlaze Посмотреть сообщение
а почему выводиться число 167 разве ограничение не 80?
Цитата Сообщение от GreenBlaze Посмотреть сообщение
Последовательность заканчиваеться когда их среднее значение станет >=80.
1
 Аватар для GreenBlaze
2 / 2 / 0
Регистрация: 05.11.2013
Сообщений: 126
14.03.2016, 19:52  [ТС]
формула среднего значения (a1+a2+a3+a4...an)/n=80 , где n количество цифр в последовательности, a a1,a2,a3.. это 7,9,11... an последнее число последовательности(его мне нужно найти!). Так вот. как мне это сделать?
0
165 / 164 / 124
Регистрация: 19.01.2016
Сообщений: 594
Записей в блоге: 1
14.03.2016, 20:02
Лучший ответ Сообщение было отмечено GreenBlaze как решение

Решение

GreenBlaze, Если правильно понял вас
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "Russian");
    const int SZ=80;
    int a=5,cnt=1;
    for (int i=0;i<SZ-1;i++){
        if (cnt<SZ)
        a+=2;
        cnt++;
        cout<<a<<" ";}
 
    cout<<endl<<"Чисел: "<<cnt<<" последнее число: "<<a;
    system("pause");
    return 0;
}
1
 Аватар для GreenBlaze
2 / 2 / 0
Регистрация: 05.11.2013
Сообщений: 126
14.03.2016, 20:12  [ТС]
ох кажется так. Большое спасибо а в чём будет отличие других циклов while и do while ? хотя если проверить через эксел то последовательность из 80 чисел закончиться на 165! а программа говорит что на 163.
0
165 / 164 / 124
Регистрация: 19.01.2016
Сообщений: 594
Записей в блоге: 1
14.03.2016, 20:17
Лучший ответ Сообщение было отмечено GreenBlaze как решение

Решение

GreenBlaze, Все правильно?Вам так надо было? Идиотское какое-то задание Лучше вот этот код тогда...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "Russian");
    const int SZ=100;
    int a=5,cnt=1;
    for (int i=0;i<SZ-1;i++){
        if (cnt<80){
        a+=2;
        cnt++;
        cout<<a<<" ";}
        else 
        break;}
 
    cout<<endl<<"Чисел: "<<cnt<<" последнее число: "<<a;
    system("pause");
    return 0;
}
Добавлено через 2 минуты
GreenBlaze, Просто разные циклы и все... Вот через
C++
1
 while
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "Russian");
    int a=5,cnt=1;
    while (cnt<80){
        a+=2;
        cnt++;
        cout<<a<<" ";}
        
    cout<<endl<<"Чисел: "<<cnt<<" последнее число: "<<a;
    system("pause");
    return 0;
}
Добавлено через 48 секунд
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()
{
    setlocale(LC_ALL, "Russian");
    int a=5,cnt=1;
    do {
        a+=2;
        cnt++;
        cout<<a<<" ";}
    while(cnt<80);
        
    cout<<endl<<"Чисел: "<<cnt<<" последнее число: "<<a;
    system("pause");
    return 0;
}
1
 Аватар для GreenBlaze
2 / 2 / 0
Регистрация: 05.11.2013
Сообщений: 126
14.03.2016, 20:20  [ТС]
Оооо да! вы лучше всех. я всю голову сломал пока принцип понял.
0
165 / 164 / 124
Регистрация: 19.01.2016
Сообщений: 594
Записей в блоге: 1
14.03.2016, 20:22
Лучший ответ Сообщение было отмечено GreenBlaze как решение

Решение

Цитата Сообщение от GreenBlaze Посмотреть сообщение
80 чисел закончиться на 165! а программа говорит что на 163.
Поправте cnt, будет 165) Я не стал считать первое число просто...
C++
1
int a=5,cnt=0;
1
 Аватар для GreenBlaze
2 / 2 / 0
Регистрация: 05.11.2013
Сообщений: 126
14.03.2016, 20:26  [ТС]
ок. вот только я так понял это вывод просто послеодовательности из 80 цифр. их среднее значение здесь не находиться
0
165 / 164 / 124
Регистрация: 19.01.2016
Сообщений: 594
Записей в блоге: 1
14.03.2016, 20:30
GreenBlaze,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <iostream>
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "Russian");
    const int SZ=100;
    int a=5,cnt=0;
    double sum;
 
    for (int i=0;i<SZ-1;i++){
        if (cnt<80){
        a+=2;
        cnt++;
        cout<<a<<" ";}
        else 
        break;}
 
    sum=a/cnt;
 
    cout<<endl<<"Чисел: "<<cnt<<" последнее число: "<<a;
    cout<<endl<<"Среднее значение равно: "<<sum;
    cout<<endl;
 
    system("pause");
    return 0;
}
1
 Аватар для GreenBlaze
2 / 2 / 0
Регистрация: 05.11.2013
Сообщений: 126
14.03.2016, 20:38  [ТС]
ну если так то. смотрите среднее программа выводит 2 быть такого не может. так если делать совсем правильно то должно так последовательность чисел не должна быть фиксированая. Так вот как только среднее значение будет 80 или больше 80. числа должны перестать генерироваться и программа должна вывести последнее число!
0
165 / 164 / 124
Регистрация: 19.01.2016
Сообщений: 594
Записей в блоге: 1
14.03.2016, 20:44
GreenBlaze, Я не могу понять задание... Что бы вывелось среднее 80, тогда конечное число должно быть 6400?
1
 Аватар для GreenBlaze
2 / 2 / 0
Регистрация: 05.11.2013
Сообщений: 126
14.03.2016, 20:51  [ТС]
вот то то и оно что я не.. ну смотрите если так скаже (a1+a2)/делим на колличество если равно меньше то программа считает дальше. (a1+a2+a3)/3 меньше 80 дальше (a1+a2+a3+a4)/4 меньше 80 дальше. (a1+a2+a3+a4+a5)/5 дальше и до тех пор пока. (a1+a2+a3+....an)/ на колличество будет = 80 или юольше то всё программа останавливаеться и выводиться an.
0
70 / 70 / 52
Регистрация: 24.01.2013
Сообщений: 198
14.03.2016, 21:09
Что-то ответы выше - это просто вывод последовательности, не ?
Как я понял из условия - нужно именно собирать числа 7, 9, 11, .... (через 2), пока их сумма / количество < ср.арифметического , т.е. нам нужно делать
7+9+11+13.....+n до того, пока их сумма деленная на n не превысит 80.
А это нифига не число 165.

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;
for (int i = 7; crt < 80; i++) {
    sum += i;
    crt = sum / cnt2;
    cout << i << ' ';
    i++; cnt2++;
}
cout << "\n\nnumbers: " << cnt2 << "\ncrt = " << crt << "\nsum = " << sum;
    return 0;
}
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.03.2016, 21:09
Помогаю со студенческими работами здесь

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

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru