Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.01.2011, 13:47   #1
Donatello
Форумчанин
 
Аватар для Donatello
 
Регистрация: 22.12.2010
Сообщений: 109
По умолчанию может можно сделать проще???

Есть задача.
Напишите задачу, которая читает 5 целых чисел(каждое в диапазоне между 1 и 30).
Для каждого прочитанного числа программа должна напечатать строку из соответствующих числу смежных звездочек. Например если программа прочла число 7, то должно вывести следующее. "*******";

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

Код:
#include <iostream>
using namespace std;

int main()
{
    int x;

    cout << "Введите 5 целых числа в диапозоне от 1 до 30" << endl;

    for(int i = 1; i <= 5; i++)
    {
        cout << "Введите " << i << " Число: ";
        cin >> x;
        for(int j = 1; j <= x; j++)
            cout << "*";
        cout << endl;
    }
    return 0;
}
Я бы изменил мир, но бог не дает исходников (c)

И сказал мыслитель, напиши свою проблему на бумаге и ты увидишь свои ошибки.
Donatello вне форума Ответить с цитированием
Старый 10.01.2011, 14:04   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

По-моему все норм, только уточни у преподавателе откуда читать нужно. Может из файла...
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 10.01.2011, 14:09   #3
stenl1
Форумчанин
 
Аватар для stenl1
 
Регистрация: 26.06.2009
Сообщений: 354
По умолчанию

А как диапазон этих чисел установить , чтоб как написано "Введите 5 целых числа в диапозоне от 1 до 30" А то тут можно хоть 100 писать и будет сто * выводить.
stenl1 вне форума Ответить с цитированием
Старый 10.01.2011, 14:55   #4
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

Цитата:
А как диапазон этих чисел установить
Ну можно условно
Код:
if ((chislo >=1) && (chislo <=30)) обрабатываешь число
else не обрабатываешь
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Старый 10.01.2011, 17:54   #5
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

конечно можно покороче, отчего ж нельзя.

Код:
#include <iostream>
#include <iterator>
#include <algorithm>

using namespace std;

void print(int i) { while (i--) cout << "*"; cout << endl; }

int main()
{
	for_each(istream_iterator<int>(cin), istream_iterator<int>(), print);
	return 0;
}
диапазон не проверяется. завершение ввода - eof (ctrl + d)

ну, и как повелось, c++0x
Код:
#include <iostream>
#include <iterator>
#include <algorithm>

using namespace std;

int main()
{
	for_each(istream_iterator<int>(cin), istream_iterator<int>(),
			[] (int i) { while (i--) cout << "*"; cout << endl; } );
	return 0;
}
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance

Последний раз редактировалось pproger; 10.01.2011 в 17:56.
pproger вне форума Ответить с цитированием
Старый 10.01.2011, 18:16   #6
kaljan775
:D
Форумчанин
 
Аватар для kaljan775
 
Регистрация: 26.09.2010
Сообщений: 570
По умолчанию

а еще можно отдельно функцию объявить, и void main () :D
Пишу ПО, создаю сайты, делаю курсовые работы, за деньги
C#, .NET, MS SQL, AngularJS, HTML, jQuery
kaljan775 вне форума Ответить с цитированием
Старый 10.01.2011, 19:09   #7
Donatello
Форумчанин
 
Аватар для Donatello
 
Регистрация: 22.12.2010
Сообщений: 109
По умолчанию

Да действительно забыл сделать проверку на вводимые числа
А препода и нет, просто по разным книгам учу С++ самостоятельно. Вот из них задания и черпаю.
До файлов еще не дошел, так что думаю без файлов. Ну и так понял по вашим постам, что по тому что я прошел, то что я сделал пока самое лучшее что могло бы получится.
Я бы изменил мир, но бог не дает исходников (c)

И сказал мыслитель, напиши свою проблему на бумаге и ты увидишь свои ошибки.
Donatello вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Кто может сделать КОНСОЛЬНЫЙ ТЕЛЕФОННЫЙ СПРАВОЧНИК на С# hike7 Помощь студентам 1 10.10.2010 17:12
Может есть алгоритм проще? группировка значений AK BULLETS Общие вопросы Delphi 9 20.04.2010 17:08
кто может за мани сделать проги на си Sined121 Фриланс 3 02.06.2009 15:50
Можно ли проще сделать задачу на паскале? svobodys Помощь студентам 8 02.12.2008 19:53
Печать из memo как можно проще NecroSlider Общие вопросы Delphi 2 01.02.2008 22:22