С Новым годом! Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/25: Рейтинг темы: голосов - 25, средняя оценка - 5.00
0 / 0 / 2
Регистрация: 07.02.2013
Сообщений: 44

Перевод чисел в слова

27.02.2013, 18:26. Показов 4857. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!Есть такая задачка: Суть программы в следующем, с клавиатуры вводится 6-значное число например "156872", а программа должна написать ниже "сто тысяч пятьдесят шесть восемьсот семьдесят два ". Буду благодарен если поможете!
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
27.02.2013, 18:26
Ответы с готовыми решениями:

Перевод чисел в слова
Помогите создать программу,в которой ты пишешь числа цифрами, а выводит число словами. например: 3456 три тысячи четыреста пятьдесят...

Перевод чисел в слова
Создать проект Delphi7 «Перевод чисел в слова», выполняющий перевод десятичного числа от 100 до 999 в словесную форму.

Найти слова, состоящие из цифр, и сумму чисел, которые образуют эти слова
• Дана строка. Найти слова, состоящие из цифр, и сумму чисел, которые образуют эти слова.

8
 Аватар для Новичок
1682 / 1098 / 489
Регистрация: 17.07.2012
Сообщений: 5,360
27.02.2013, 21:23
Pascal
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
program lab;
uses Crt;
var num,a,b:longint;
s:String;
 
function trz(var a:longInt):String;
begin
case a div 100 of
1:trz:='сто ';
2:trz:='двести ';
3:trz:='триста ';
4:trz:='четыреста ';
5:trz:='пятьсот ';
6:trz:='шестьсот ';
7:trz:='семьсот ';
8:trz:='восемьсот ';
9:trz:='девятьсот ';
end;
case a mod 100 div 10 of
1:trz:=trz+'десять '; 
2:trz:=trz+'двадцать '; 
3:trz:=trz+'тридцать '; 
4:trz:=trz+'сорок '; 
5:trz:=trz+'пятьдесят '; 
6:trz:=trz+'шестьдесят '; 
7:trz:=trz+'семьдесят '; 
8:trz:=trz+'восемьдесят '; 
9:trz:=trz+'девяносто '; 
end;
case a mod 10 of
1:trz:=trz+'один ';
2:trz:=trz+'два ';
3:trz:=trz+'три ';
4:trz:=trz+'четыре ';
5:trz:=trz+'пять ';
6:trz:=trz+'шесть ';
7:trz:=trz+'семь ';
8:trz:=trz+'восемь ';
9:trz:=trz+'девять ';
end;
end;
 
begin
Write('Введите шестизначное число:');
Readln(num);
a:=num div 1000;
b:=num mod 1000;
s:=trz(a)+' тысяч(и) '+trz(b);
Writeln(s);
Readln;
end.
1
0 / 0 / 2
Регистрация: 07.02.2013
Сообщений: 44
27.02.2013, 21:35  [ТС]
PascalABC пишет "неверное количество фактических параметров" и кидает на 20 строчку
0
 Аватар для Новичок
1682 / 1098 / 489
Регистрация: 17.07.2012
Сообщений: 5,360
27.02.2013, 21:44
Не знаю,у меня в FreePascal все работает,компилируется без ошибок.
0
0 / 0 / 2
Регистрация: 07.02.2013
Сообщений: 44
27.02.2013, 22:03  [ТС]
Цитата Сообщение от Андрей_Новичок Посмотреть сообщение
Не знаю,у меня в FreePascal все работает,компилируется без ошибок.
У меня в ФриПаскале прикомпиляции любой программы одна и та же ошибка http://clip2net точка com/s/2SUgs

Добавлено через 8 минут
PascalABC.NET пишет "Program1.pas(20) : Нельзя преобразовать тип function(var a: integer): string к string"
0
 Аватар для Новичок
1682 / 1098 / 489
Регистрация: 17.07.2012
Сообщений: 5,360
27.02.2013, 22:11
Думаю так пойдет.
Pascal
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
program lab;
uses Crt;
var num,a,b:longint;
s:String;
 
function tr(var a:longInt):String;
var trz:String;
begin
case a div 100 of
1:trz:='сто ';
2:trz:='двести ';
3:trz:='триста ';
4:trz:='четыреста ';
5:trz:='пятьсот ';
6:trz:='шестьсот ';
7:trz:='семьсот ';
8:trz:='восемьсот ';
9:trz:='девятьсот ';
end;
case a mod 100 div 10 of
1:trz:=trz+'десять '; 
2:trz:=trz+'двадцать '; 
3:trz:=trz+'тридцать '; 
4:trz:=trz+'сорок '; 
5:trz:=trz+'пятьдесят '; 
6:trz:=trz+'шестьдесят '; 
7:trz:=trz+'семьдесят '; 
8:trz:=trz+'восемьдесят '; 
9:trz:=trz+'девяносто '; 
end;
case a mod 10 of
1:trz:=trz+'один ';
2:trz:=trz+'два ';
3:trz:=trz+'три ';
4:trz:=trz+'четыре ';
5:trz:=trz+'пять ';
6:trz:=trz+'шесть ';
7:trz:=trz+'семь ';
8:trz:=trz+'восемь ';
9:trz:=trz+'девять ';
end;
tr:=trz;
end;
 
begin
Write('Введите шестизначное число:');
Readln(num);
a:=num div 1000;
b:=num mod 1000;
s:=tr(a)+'тысяч(и) '+tr(b);
Writeln(s);
Readln;
end.
1
0 / 0 / 2
Регистрация: 07.02.2013
Сообщений: 44
27.02.2013, 22:12  [ТС]
Ооо, спасибо)
0
 Аватар для Новичок
1682 / 1098 / 489
Регистрация: 17.07.2012
Сообщений: 5,360
27.02.2013, 22:42
Как-то странно,что FPC не отреагировал,но раз пошло,хорошо.

Добавлено через 29 минут
Значит так,я исправил код,там я кое-что упустил,бери доработанный,только-что сам заметил недочеты своей проги.
Pascal
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
60
61
62
63
64
65
66
program lab;
uses Crt;
var num,a,b:longint;
s:String;
 
function tr(var a:longInt):String;
var trz:String;
begin
case a div 100 of
1:trz:='сто ';
2:trz:='двести ';
3:trz:='триста ';
4:trz:='четыреста ';
5:trz:='пятьсот ';
6:trz:='шестьсот ';
7:trz:='семьсот ';
8:trz:='восемьсот ';
9:trz:='девятьсот ';
end;
case a mod 100 of
11:trz:=trz+'одиннадцать ';
12:trz:=trz+'двенадцать ';
13:trz:=trz+'тринадцать ';
14:trz:=trz+'четырнадцать ';
15:trz:=trz+'пятьнадцать ';
16:trz:=trz+'шестьнадцать ';
17:trz:=trz+'семьнадцать ';
18:trz:=trz+'восемьнадцать ';
19:trz:=trz+'девятьнадцать ';
else
case a mod 100 div 10 of
1:trz:=trz+'десять '; 
2:trz:=trz+'двадцать '; 
3:trz:=trz+'тридцать '; 
4:trz:=trz+'сорок '; 
5:trz:=trz+'пятьдесят '; 
6:trz:=trz+'шестьдесят '; 
7:trz:=trz+'семьдесят '; 
8:trz:=trz+'восемьдесят '; 
9:trz:=trz+'девяносто '; 
end;
case a mod 10 of
1:trz:=trz+'один ';
2:trz:=trz+'два ';
3:trz:=trz+'три ';
4:trz:=trz+'четыре ';
5:trz:=trz+'пять ';
6:trz:=trz+'шесть ';
7:trz:=trz+'семь ';
8:trz:=trz+'восемь ';
9:trz:=trz+'девять ';
end;
end;
tr:=trz;
end;
 
begin
Write('Введите шестизначное число:');
Readln(num);
a:=num div 1000;
b:=num mod 1000;
s:=tr(a)+'тысяч(и) ';
if b<>0 then s:=s+tr(b);
Writeln(s);
Readln;
end.
1
botkick
28.02.2013, 18:48
Хотел сделать "умный" перевод, вот что вышло
Pascal
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
60
61
62
63
64
65
66
67
68
69
70
71
uses Crt;
var num,a,b:longint;
s:String;
i:byte;
NumTMP:integer;
function tr(var a:longInt):String;
var trz:String;
begin
case a div 100 of
1:trz:='сто ';
2:trz:='двести ';
3:trz:='триста ';
4:trz:='четыреста ';
5:trz:='пятьсот ';
6:trz:='шестьсот ';
7:trz:='семьсот ';
8:trz:='восемьсот ';
9:trz:='девятьсот ';
end;
case a mod 100 of
11:trz:=trz+'одиннадцать ';
12:trz:=trz+'двенадцать ';
13:trz:=trz+'тринадцать ';
14:trz:=trz+'четырнадцать ';
15:trz:=trz+'пятьнадцать ';
16:trz:=trz+'шестьнадцать ';
17:trz:=trz+'семьнадцать ';
18:trz:=trz+'восемьнадцать ';
19:trz:=trz+'девятьнадцать ';
else
case a mod 100 div 10 of
1:trz:=trz+'десять '; 
2:trz:=trz+'двадцать '; 
3:trz:=trz+'тридцать '; 
4:trz:=trz+'сорок '; 
5:trz:=trz+'пятьдесят '; 
6:trz:=trz+'шестьдесят '; 
7:trz:=trz+'семьдесят '; 
8:trz:=trz+'восемьдесят '; 
9:trz:=trz+'девяносто '; 
end;
case a mod 10 of
1:if i=2 then trz:=trz+'одна ' else trz:=trz+'один ';
2:if i=2 then trz:=trz+'два ' else trz:=trz+'две ';
3:trz:=trz+'три ';
4:trz:=trz+'четыре ';
5:trz:=trz+'пять ';
6:trz:=trz+'шесть ';
7:trz:=trz+'семь ';
8:trz:=trz+'восемь ';
9:trz:=trz+'девять ';
end;
case NumTMP of
1:trz:=trz+'тысяча ';
2,3,4: trz:=trz+'тысячи ';
else if a<>0  then trz:=trz+'тысяч ';
end;
end;
tr:=trz;
end;
 
Begin
Write('Введите шестизначное число: ');
Readln(num);
a:=num div 1000;
b:=num mod 1000;
s:=tr(a)+ tr(NumTMP);
If b<>0 then s:=s+tr(b);
Writeln(s);
Readln;
End.
Подправьте плз!
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.02.2013, 18:48
Помогаю со студенческими работами здесь

Перевод чисел в двоичную систему счисления, сложение чисел в двоичной системе
Задание 7 Задания к работе 1. Перевести данное число из десятичной системы счисления в двоичную, восьмеричную и шестнадцатеричную системы...

Перевод массива вводимых чисел в массив чисел в другой системе счисления
Доброго времени суток, предлагается оказать помощь студенту новичку) Есть пример реализации этого в ехе файле но как это запрограммировать...

Перевод списка арабских чисел в список соответствующих им римских чисел
Создайте предикат, переводящий список арабских чисел в список соответствующих им римских чисел

Перевод чисел в дополнительный код и сложение (вычитание) этих чисел в однобайтовом формате
Даны два числа Х и У в двоичной системе счисления. Нужно написать программу, которая переводила числа в дополнительный код и производило...

Дан текст, найти слова, состоящие из цифр, и сумму чисел, которые образуют эти слова
Дан текст. Найти слова, состоящие из цифр, и сумму чисел, которые образуют эти слова. Помогите написать! С блок схемой.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru