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

Вывести звездочки и точки указанное количество раз

08.07.2014, 19:20. Показов 17743. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Решаю задачу:
Напишите программу, использующую вложенные циклы, которая запрашивает
у пользователя значение количества строк для отображения. Затем она должна
отобразить указанное число строк со звездочками, с одной звездочкой в первой
строке, двумя — во второй и т.д: В каждой строке звездочкам должны
предшествовать точки — в таком количестве, чтобы общее число символов в каждой
строке было равно количеству строк. Пример:
Вводим 5, получаем:

....*
...**
..***
.****
*****

Вот максимум, который я смог наработать:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include<iostream>
using namespace std;
int main()
{
    int a=0;
    cout << "Enter the quantity of strings: ";
    cin >> a;               //количество строк
    int b = 1;                 //переменная для действий в цикле 
    for (; a;b++)            //цикл, выводящий   a   строк
    {
        for (; a - b;)    //цикл, выводящий точки (бесконечен)
            cout << '.';
        for (; b;)     //цикл, выводящий звёзды, если убрать цикл с точками, то тоже бесконечен
            cout << '*';
        cout << endl;
    }
    system("pause");
    return 0;
}
Казус в том, что цикл зацикливается и бесконечно печатает точки, ума не приложу, в чём проблема, ещё и информацию по вложенным циклам нарыть не получается.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.07.2014, 19:20
Ответы с готовыми решениями:

Вывести в столбик заданное сообщение указанное количество раз
Дано целое число N. Необходимо вывести в столбик N раз сообщение &quot;POMOGITE RADI KHRISTA&quot;.

Выполнить цикл while указанное количество раз
привет ,как сделать так чтобы цикл количество равное число. то есть while(3){ ну нужно чтобы тогда три итерации }

Повторить цикл указанное количество раз
Пытаюсь написать цыкл который выполнится указанное количество раз, но со сменой одной переменной в нём, и ничего не выходит, подскажите...

6
272 / 266 / 146
Регистрация: 02.08.2012
Сообщений: 609
08.07.2014, 19:28
Лучший ответ Сообщение было отмечено Алямбр как решение

Решение

Цитата Сообщение от Алямбр Посмотреть сообщение
Казус в том, что цикл зацикливается и бесконечно печатает точки
Ну да, он же не знает когда остановиться
C++
1
for (; a;b++) // Значение (a) должно сравниваться с каким-то значением
Например:
C++
1
for (; a>b;b++)
Так же в остальных циклах, по логике выполнения операций
1
 Аватар для IrineK
2023 / 1641 / 425
Регистрация: 23.02.2011
Сообщений: 6,002
Записей в блоге: 25
08.07.2014, 19:28
Лучший ответ Сообщение было отмечено Алямбр как решение

Решение

Цитата Сообщение от Алямбр Посмотреть сообщение
C++
1
for (; a;b++)
будет выполняться, пока a не равно 0

Цитата Сообщение от Алямбр Посмотреть сообщение
C++
1
for (; a - b;)
будет выполняться, пока а не равно b (a-b != 0)

Цитата Сообщение от Алямбр Посмотреть сообщение
C++
1
for (; b;)
будет выполняться, пока b не равно 0
1
Модератор
Эксперт С++
 Аватар для zss
13769 / 10962 / 6491
Регистрация: 18.12.2011
Сообщений: 29,236
08.07.2014, 19:34
C++
1
2
3
4
5
6
7
8
9
10
 cout << "Enter the quantity of strings: ";
   int n;cin >> n;
   for(int i=0;i<n;i++)
   {
        for(int j=0;j<n-i-1;j++)
            cout<<'.';
        for(int j=n-i-1;j<n;j++)
            cout<<'*';
        cout<<endl;
   }
1
Модератор
Эксперт по электронике
8978 / 6744 / 921
Регистрация: 14.02.2011
Сообщений: 23,852
08.07.2014, 19:35
Цитата Сообщение от Алямбр Посмотреть сообщение
C++
1
for (; a - b;)
* *//цикл, выводящий точки (бесконечен)
потому что не меняется в цикле ни a ни b в результате условие выхода из цикла всегда не выполняется, a - b не равно 0
Цитата Сообщение от Алямбр Посмотреть сообщение
C++
1
for (; b;)
* * //цикл, выводящий звёзды, если убрать цикл с точками, то тоже бесконечен
потому что b не изменяется и никак не может стать равным 0
1
 Аватар для Алямбр
0 / 0 / 0
Регистрация: 22.03.2014
Сообщений: 8
08.07.2014, 19:45  [ТС]
Спасибо, я теперь правильно понял суть циклов (я почему-то думал, что циклу достаточно задать некое число, и он выполниться столько раз, перемкнуло с недосыпа наверное), вот моё решение:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include<iostream>
using namespace std;
int main()
{
    int a=0;
    cout << "Enter the quantity of strings: ";
    cin >> a;
    int b = 1;
    for (int f=0;f!=a;b++,f++)
    {
        for (int c=0; c!=a - b;c++) 
            cout << '.';
        for (int d=0;d!= b;d++)
            cout << '*';
        cout << endl;
    }
    system("pause");
    return 0;
}
0
 Аватар для Arhis
0 / 0 / 0
Регистрация: 30.09.2016
Сообщений: 5
05.10.2016, 04:29
Подскажите какими книгами можно переформатировать мозги чтобы решать такие задачи?
Даже не получается логически раставить цепочки работы данного кода в голове. Неговоря уже о том чтобы написать его.
Какую бы литературу вы посоветовали?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
05.10.2016, 04:29
Помогаю со студенческими работами здесь

Выполнение макроса указанное количество раз
Есть макрос назовем его sub x() ....... ...... End Sub как сделать что бы этот макрос выполнялся заданное число раз. Буду рад...

Макрос в VBA, копирование строк указанное количество раз, и группировка
Добрый день, помогите пожалуйста с макросом, который при вводе в определенную ячейку, какой либо цифры, скопирует на новый лист такое же...

Выделить те символы, которые встречаются в исходной строке указанное количество раз
Необходимо выполнить с помощью ассемблерной вставки. Я очень-очень новичок в этом, получилось типа этого. Подскажите что не так делаю. ...

Отредактировать заданный текст, удалив из него слова, которые встречаются указанное количество раз
Отредактировать заданный текст, удалив из него слова, которые встречаются указанное количество раз. Три дня уже бьюсь. =/ ...

Выведите звездочки "полуелочкой" заданное количество раз
Выведите звездочки &quot;полуелочкой&quot; заданное количество раз * ** *** * ** *** ****


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
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