Модераторы: volvo877, Snowy, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите разобраться с программой! Алфавитно-цифровой режим. 
:(
    Опции темы
elaisa
Дата 14.9.2006, 05:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 14.9.2006

Репутация: нет
Всего: нет



 Всем привет! Изучаю Паскаль заочно, трудновато... Помогите разобраться в программе. Не могу сообразить какую формулу написать, чтобы работала по условию!!! Вроде уже как только не писала, а все равно не получается как надо.... smile 
Код
Program Ispolnitel;
{Реализовать исполнителя, рисующего на экране дисплея (в алфавитно-цифровом
режиме) буквы Г:
***    ***
*        *
*        *
{Высота и ширина каждой буквы - 3 символа, такое же расстояние между буквами.
Программа должна обеспечивать ввод команды ПЕЧАТЬ (x,y,S,L), где x,y - координаты
верхнего левого угла первой буквы, L - количество букв Г, S - символ с
помощью которого рисуются эти буквы (на приведенном примере в качестве такого
символа выступает звездочка). Исполнитель должен проверять правильность
набранной команды, а также контролировать допустимость значений параметров.}
uses crt;
var x,y,k,i,j,L:integer;
    S:char;
  procedure bukva(x,y,L:integer;S:char);
  var i,j:integer;
  begin
  for k:= 1 to L do begin
   for i:=1 to 3 do begin gotoXY(x,y);
   write(S);
    end;
   for j:=1 to 3 do
    begin gotoXY(x,y);
    write(S);
    y:=y+1
    end;
  end;
  readln;
  end;

  begin
  clrscr;
  writeln('             <<< Программа рисует букву Г в алфавитно-цифровом режиме!!! >>>');
  write('Сколько букв нарисовать? = ');
  readln(L);
  write('Каким символом? = ');
  readln(S);
  write('Введите координаты начала рисования: = ');
  readln(x,y);
  clrscr;
  bukva(x,y,L,S);
  readln;
  end.


Это сообщение отредактировал(а) volvo877 - 14.9.2006, 08:19
PM MAIL   Вверх
volvo877
Дата 14.9.2006, 08:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2073
Регистрация: 15.11.2004

Репутация: 2
Всего: 116



elaisa,
ты не меняешь координаты, в которые выводятся символы, а надо бы. Например, так:

Код
procedure bukva(x,y,L:integer;S:char);
var i,j:integer;
begin
  for k:= 1 to L do begin

    for i:=1 to 3 do begin
      gotoXY(x+(k-1)*4+i-1,y); write(S);
    end;
    for j:=1 to 3 do begin
      gotoXY(x+(k-1)*4,y+(j-1)); write(S);
    end;

  end;
  readln;
end;

PM MAIL   Вверх
elaisa
Дата 14.9.2006, 08:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 14.9.2006

Репутация: нет
Всего: нет



Я пробовала. Вводила так:
 for i:=1 to 3 do begin
      gotoXY(x+(k-1),y); write(S);
    end;
    for j:=1 to 3 do begin
      gotoXY(x,y+(j-1)); write(S);
    end;
Теперь вижу где ошибка, теперь выводится по диагонали и первая буква пишется в строчку.... smile 


Это сообщение отредактировал(а) elaisa - 14.9.2006, 09:00
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi"
THandle
Rrader
volvo877

Запрещается!

1. Обсуждать и делится взломанными компонентами или программным обеспечением

2. Публиковать ссылки на варез

3. Оффтопить

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, THandle, Rrader, volvo877.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Object Pascal: кроссплатформенные технологии | Следующая тема »


 




[ Время генерации скрипта: 0.0393 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.