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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.12.2008, 17:22   #1
...Оленька...
Пользователь
 
Регистрация: 08.11.2008
Сообщений: 32
По умолчанию Символьные типы данных

помогите пожалуйста решить задачу и составить блок схему!
Дано натуральное n(n<=1000). Записать это число русскими словами (семнадцать, двести пятьдесят три, тысяча и т. д.)
...Оленька... вне форума Ответить с цитированием
Старый 23.12.2008, 20:24   #2
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Вот оно )
Здесь можно консты не писать, а сразу забить строки в элементы массивов (soty[],desya[]...). Просто сначала хотел по-другому немного сделать, но потом решил так, а перепечатывать неохота )

Код:
uses crt;

const
s1 = 'один';
s2 = 'два';
s3 = 'три';
s4 = 'четыре';
s5 = 'пять';
s6 = 'шесть';
s7 = 'семь';
s8 = 'восемь';
s9 = 'девять';
s10 = 'десять';
s11 = 'одинадцать';
s12 = 'двенадцать';
s13 = 'тринадцать';
s14 = 'четырнадцать';
s15 = 'пятнадцать';
s16 = 'шестнадцать';
s17 = 'семнадцать';
s18 = 'восемнадцать';
s19 = 'девятнадцать';
s20 = 'двадцать';
s30 = 'тридцать';
s40 = 'сорок';
s50 = 'пятьдесят';
s60 = 'шестьдесят';
s70 = 'семьдесят';
s80 = 'восемьдесят';
s90 = 'девяносто';
s100 = 'сто';
s200 = 'двести';
s300 = 'триста';
s400 = 'четыреста';
s500 = 'пятьсот';
s600 = 'шестьсот';
s700 = 'семьсот';
s800 = 'восемьсот';
s900 = 'девятьсот';
s1000 = 'тысяча';
{----------------------}
var
chislo : integer;
ndig,i : integer;
m : array[1..4] of byte;
str : string;
soty : array[0..9] of string;
desya : array[2..9] of string;
cat : array[0..9] of string;
ed : array[0..9] of string;
fl : boolean;

begin
clrscr;
soty[0] := '';
soty[1] := s100;
soty[2] := s200;
soty[3] := s300;
soty[4] := s400;
soty[5] := s500;
soty[6] := s600;
soty[7] := s700;
soty[8] := s800;
soty[9] := s900;
desya[2] := s20;
desya[3] := s30;
desya[4] := s40;
desya[5] := s50;
desya[6] := s60;
desya[7] := s70;
desya[8] := s80;
desya[9] := s90;
cat[0] := s10;
cat[1] := s11;
cat[2] := s12;
cat[3] := s13;
cat[4] := s14;
cat[5] := s15;
cat[6] := s16;
cat[7] := s17;
cat[8] := s18;
cat[9] := s19;
ed[0] := '';
ed[1] := s1;
ed[2] := s2;
ed[3] := s3;
ed[4] := s4;
ed[5] := s5;
ed[6] := s6;
ed[7] := s7;
ed[8] := s8;
ed[9] := s9;
{--}
write('Введите число: ');
readln(chislo);
ndig := 0;
fl := false;
str := '';
 while chislo <> 0 do
  begin
  inc(ndig);
  m[ndig] := chislo mod 10;
  chislo := chislo div 10;
  end;
{----}
for i:=ndig downto 1 do
 begin
 case i of
 4 : write(s1000,' ');

 3 : write(soty[m[i]],' ');

 2 : begin
      if m[i]>=2 then write(desya[m[i]],' ')
      else if m[i]=0 then write('')
      else
       begin
       fl := true;
       write(cat[m[i-1]],' ');
       end;
     end;
 1 : if not fl then write(ed[m[i]]);

 end;

 {--}
 end;

writeln;
readln;
end.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 24.12.2008, 15:27   #3
...Оленька...
Пользователь
 
Регистрация: 08.11.2008
Сообщений: 32
По умолчанию

большое спасибо!
...Оленька... вне форума Ответить с цитированием
Старый 13.06.2012, 13:21   #4
Durgut
 
Регистрация: 13.06.2012
Сообщений: 4
По умолчанию

помогите к этой программе написать алгоритм. т.е. описание программы что за чем она делает ?! заранее спасибо большое
Durgut вне форума Ответить с цитированием
Старый 13.06.2012, 14:25   #5
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Ты на дату смотрел?
Poma][a вне форума Ответить с цитированием
Старый 14.06.2012, 13:43   #6
Durgut
 
Регистрация: 13.06.2012
Сообщений: 4
По умолчанию

а разница то какая? ну была это программа написана в 2008. а мне она сейчас пригадилась. + описание нужно
Durgut вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Символьные типы данных ...Оленька... Паскаль, Turbo Pascal, PascalABC.NET 14 07.01.2009 04:44
Комбинированные типы данных и массивы mar4elo Общие вопросы Delphi 11 01.12.2008 10:41
Типы данных nedden Помощь студентам 2 12.11.2008 17:18
Типы данных??? Рустам Общие вопросы Delphi 10 08.11.2007 08:03
Про типы данных Smorodin Общие вопросы .NET 1 02.10.2007 15:40