Книга: Язык Си - руководство для начинающих
ПРОГРАММА, "РИСУЮЩАЯ" СИМВОЛАМИ
Давайте теперь займемся чем нибудь менее утилитарным и более декоративным. Нашей целью является создание программы, с помощью которой вы сможете рисовать на экране геометрические фигуры, заполненные символами. Каждая выводимая строка представляет собой сплошной рад одинаковых символов.
Нам предоставляется возмжность выбора символа, длины строки, а текже начальной позиции, с которой она выводиться на печать. Программа читает указываемые параметры до тех пор, пока не встретит признак EOF. Текст программы представлен на рис. 7.5.
Положим, мы вызываем программу sketcher. Чтобы ее выполнить, мы набираем на клавиатуре ее имя, затем вводим символ и два числа. На экране появляется отклик, после чего мы вводим его набор параметров, отклик появляется вновь, и так до тех пор пока мы не введем признак EOF.
В среде ОС UNIX диалог будет выглядеть следующим образом:
% sketcher
B 10 20
BBBBBBBBBBB
Y 12 18
YYYYYYY
[CTRL/-d]
%
/* художник-график */
/* РИСУЕТ сплошные фигуры */
#include
#define MAXLENGTH 80
main( )
{
int ch; /*печатаемыйсимвол*/
int start, stop; /* начальная и конечные позици */
int count; /* счетчикпозиций*/
whilе((сh = getchar( )) != EOF) /* вводсимвола*/
{
if(ch != 'n' ) /*пропуск символа "новая строка"*/
{ scanf(" %d %d", &start, &stop); /* ввод граничных значний*/
if (start > stop || start < 1 || stop > MAXLENGTH)
printf(" Введены неправильные граничные значе ния n");
else
{ count = 0;
while(++count < start)
putchar(' '); /* печать пробелов вплоть до начальной позиции */
while(count++ <= stop)
putchar(ch); /*печать символа до конечной позиции */
putchar(' n'); /* закончить печать строки и начать новую */
} /* конец части else */
} /* конец проверки содержимого ch */
} /* конец цикла while */
} /* конец программы */
РИС. 7. 5. Программа, рисующая символами
Программа вывела на экран символ В в позициях с 10 по 20, а символ Y - с 12 по 18. К сожалению, при диалоговой работе с программой на экране наши команды перемежаются выводимым строками. Гораздо более удобным способом использования программы является создание файла, содержащего подходящий набор данных, а затем применение операции переключения для ввода (из него) параметров в программу. Предположим, например, что в файле с именем fig содержатся следующие данные:
- 30 50
| 30 50
| 30 50
| 30 50
| 30 50
| 30 50
= 20 60
: 31 49
: 31 49
: 29 49
: 27 49
: 25 49
: 30 49
: 30 49
/ 30 49
: 35 48
: 35 48
Послe ввода команды sketcher < fig результат работы программы будет выглядеть так, как показано на рис. 7.6.
- Восстановление "безнадежных" баз данных. InterBase Surgeon
- Основные "рычаги" управления производительностью
- Using Double Quotes to Resolve Variables in Strings with Embedded Spaces
- Программа «Тайный покупатель»
- Программа Victoria
- Подпрограмма обработки прерывания
- Магическая программа, или Беспорядок по расписанию
- Что делать, если вместо русских букв в программах – непонятные символы?
- Как называется программа, которая устанавливает Windows за 5 минут?
- Программа shmget
- Какая программа позволяет создавать документы формата PDF?
- Удаляю Windows Messenger из автозапуска, но после перезагрузки программа снова запускается. С другими приложениями таког...