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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 09.06.2017, 17:46   #1
Halikarnas
Пользователь
 
Регистрация: 19.03.2017
Сообщений: 14
По умолчанию Дано целое число в интервале 1...999999999. Записать данное число прописью, используя функции для определения сотен, десятков и единиц.

Дано целое число в интервале 1...999999999. Записать данное число прописью, используя функции для определения сотен, десятков и единиц.
Halikarnas вне форума Ответить с цитированием
Старый 09.06.2017, 17:53   #2
Plague
Забанен
Форумчанин Подтвердите свой е-майл
 
Аватар для Plague
 
Регистрация: 01.11.2006
Сообщений: 420
По умолчанию

Что не получается конкретно? Где Ваши наработки?
Если ничто другое не помогает, прочтите, наконец, инструкцию! Аксиома Кана
Plague вне форума Ответить с цитированием
Старый 09.06.2017, 18:09   #3
Halikarnas
Пользователь
 
Регистрация: 19.03.2017
Сообщений: 14
По умолчанию

Вот мой код на Turbo pascal, а мне нужно на PascalABC.Net
Помогите пожалуйста
Код:
uses crt;
var st:string;
    n,i:longint;
    c:array[1..2]of integer;{массив тысяч(0-999) и единиц(0-999)}
    s:array[1..3]of string;{массив склонений тысяч}
begin
clrscr;
s[1]:='тысяча';
s[2]:='тысячи';
s[3]:='тысяч';
repeat
write('Введите число от 0 до 1 000 000 n=');
readln(n);
until(n>=0)and(n<=1000000);
if n=1000000 then st:='один миллион'
else if n=0 then st:='ноль'
else
 begin
  st:='';
  c[1]:=n div 1000;
  c[2]:=n mod 1000;
  for i:=1 to 2 do
  if c[i]<>0 then
   begin
    if c[i] div 100<>0 then
    case c[i] div 100 of
    1:st:=st+'сто';
    2:st:=st+'двести';
    3:st:=st+'триста';
    4:st:=st+'четыреста';
    5:st:=st+'пятьсот';
    6:st:=st+'шестьсот';
    7:st:=st+'семьсот';
    8:st:=st+'восемьсот';
    9:st:=st+'девятьсот';
    end;
  if (c[i] mod 100) div 10<>1 then
   begin
    case (c[i] mod 100) div 10 of
    2:st:=st+' двадцать';
    3:st:=st+' тридцать';
    4:st:=st+' сорок';
    5:st:=st+' пятьдесят';
    6:st:=st+' шестьдесят';
    7:st:=st+' семьдесят';
    8:st:=st+' восемьдесят';
    9:st:=st+' девяносто';
    end;
    case c[i] mod 10 of
    1:if i=1 then st:=st+' одна' else st:=st+' один';
    2:if i=1 then st:=st+' две' else st:=st+' два';
    3:st:=st+' три';
    4:st:=st+' четыре';
    5:st:=st+' пять';
    6:st:=st+' шесть';
    7:st:=st+' семь';
    8:st:=st+' восемь';
    9:st:=st+' девять';
    end;
   end
  else
   case (c[i] mod 100) of
   10:st:=st+' десять';
   11:st:=st+' одиннадцать';
   12:st:=st+' двенадцать';
   13:st:=st+' тринадцать';
   14:st:=st+' четырнадцать';
   15:st:=st+' пятндцать';
   16:st:=st+' шестнадцать';
   17:st:=st+' семнадцать';
   18:st:=st+' восемнадцать';
   19:st:=st+' девятнадцать';
   end;
   if i=1 then
    begin
     if(c[i] mod 100>=10) and (c[i] mod 100<=19) then st:=st+' '+s[3]+' '
     else
     case c[i] mod 10 of
     1:st:=st+' '+s[1]+' ';
     2..4:st:=st+' '+s[2]+' ';
     5..9,0:st:=st+' '+s[3]+' ';
     end;
    end;
  end;
 end;
writeln(st);
readln;
end.
Halikarnas вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дано вещественное число. Проверить: принадлежит ли данное число промежутку: [-1;1]. valodu Помощь студентам 1 02.03.2016 13:41
Задача на использования оператор цикла for C++. Дано целое число N (> 0).Найти квадрат числа,используя для его вычисления формулу: /Crow/ Помощь студентам 0 19.12.2013 12:02
Задача на использования оператор цикла for C++. Дано вещественное число A и целое число N (> 0). Используя один цикл, найти сумму /Crow/ Помощь студентам 0 19.12.2013 12:02
Дано трехзначное число. Если в сумме его цифр присутствует число 7,то число записать в зеркальном виде ( Паскаль ) Эля777 Помощь студентам 5 22.04.2013 23:23
дано трехзначное число.вывести число,полученное при перестановки цифр десятков и сотен исходдного числа. Kenny_mackormik Помощь студентам 7 12.03.2009 15:18