Форум программистов, компьютерный форум CyberForum.ru

Печать квадрата из звездочек. Как сделать лучше? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ [Массивы] Матрица 5х5 С++ http://www.cyberforum.ru/cpp-beginners/thread88188.html
Ребят помогите пожалуйста, завтра экзамен, для допуска осталась одна задача не решеной. Найти сумму положительных элементов указанного столбца матрицы А 5х5
C++ Дан двумерный массив, вычислить произведение отрицательных элементов, заменить этим числом элементы второй строки матрицы написала программу, считает только произведение, надо оформить в виде функции http://www.cyberforum.ru/cpp-beginners/thread88172.html
Дан двумерный массив n*m Найти среднее арифметическое S его элементов и заменить этим числом элементы второй строки C++
Не получается написать правильно программу.Дан двумерный массив А размером m*n. Найти среднее арифметическое S его элементов и заменить этим числом элементы 2-й строки.Оформить в виде функций. Что делать?
C++ Уменьшить последовательность
Дана последовательность из N элементов. Нужно уменьшить её, удалив первый из отрицательных элементов и минимальный из положительных элементов и сдвинуть все остальные к началу.
C++ Классы http://www.cyberforum.ru/cpp-beginners/thread88113.html
Здравствуйте господа. Сегодня у меня очередная Лабораторка. Только уже по С++. Задание: Определить класс "Паспортные данные", предусмотрев в нем компонентные данные: фамилия, имя, отчество, пол, национальность, дата рождения, серия паспорта, номер паспорта, дата выдачи и кем выдан. Предусмотреть функции для доступа к отдельным компонентам класса, вывод на экран, добавление элемента, ...
C++ Программа с простыми числами Здравствуйте, мне дали такое условие: "В файле записаны числа. С клавиатуры вводится число. Требуется вывести на экран все простые числа, не содержащие этой цифры (которую вводим с клавиатуры). Отсортировать их по сумме цифр." Буду очень благодарен, если поможете написать программу.. Добавлено через 20 минут У меня есть похожая программа, только с буквами ("Есть файл, в нем слова. с клавы... подробнее

Показать сообщение отдельно
Сыроежка
Заблокирован
16.08.2011, 17:01     Печать квадрата из звездочек. Как сделать лучше?
Цитата Сообщение от fs444 Посмотреть сообщение
Я написал программу, которая печатает из звездочек квадрат с заданной стороной. Например, квадрат со стороной 6 будет выглядеть так:
******
*____*
*____*
*____*
*____*
******
Код такой:

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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#include<iostream>
using std::cout;
using std::cin;
 
#include<windows>
 
void rustext(char str[])
{
   char buffer[1024];
   CharToOem(str, buffer);
   cout << buffer;
}
 
void probel(int kolvoProbelov = 0)
{
   for (int j = 0; j < kolvoProbelov; j++)
   {
      cout << " ";
   }
}
 
int main()
{
   int storonaKvadrata = 0; // длина стороны квадрата
 
   rustext("Введите длину стороны квадрата (целое число, от 1 до 20)\n\r");
   cin >> storonaKvadrata;
 
   if (storonaKvadrata <= 20)
   {
      for (int i = 0; i < storonaKvadrata; i++)
      {
         cout << "*";
      }
 
      cout << "\n\r";
 
      for (int k = 0; k < (storonaKvadrata - 2); k++)
      {
         cout << "*";
         probel(storonaKvadrata - 2);
         cout << "*\n\r";
      }
 
      for (int i = 0; i < storonaKvadrata; i++)
      {
         cout << "*";
      }
 
      cout << "\n\r";
   }
   else
   {
      rustext("Введенное число превышает 20.\n\r");
   }
 
   system("pause");
   return 0;
}
Вопрос: есть ли лучшее решение задачи?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include   <iostream>
#include   <vector>
#include   <string>
 
 
int main()
{
   size_t n;
   std::cout >> "Enter 'n': ";
   std::cin >> n;
 
   std::vector<std::string> > v( n, std::string( n, '*' ) );
 
   std::copy( v.begin(), v.end(), std::ostream_iterator<std::string>( std::cout, "\n" ) );
}
 
Текущее время: 11:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru