Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Динар Габбасов
Заблокирован
#1

программа которая переводит введенные числа в буквенную начертанию (надо немного исправить) - C++

25.12.2011, 23:48. Просмотров 509. Ответов 1
Метки нет (Все метки)

Уважаемые программисты, помогите исправить программу, программа должна введенное с клавиатуры число переводить в письменное начертание, Например: пишем 254 выводит "dvesti pyatdesyat 4etire"
Я составил программу но она почему то не правильно работает, точнее вообще не находит ничего, не могли бы объяснить в чем проблема или помочь доработать программу, всем заранее благодарен.
Код
#include "stdafx.h"
#include <iostream>
using namespace std;

int main ( )
{ //char *k[9]={"sto","dvesti","3","4","5" ,"6","7","8","9"};
 char *s[19][15]=
 {
	{"null","odin","dva","try","4etire" ,"pyat","shest","sem","vosem","devat"},
	{"desyat","odinadcat","dvenadcat"," trindcat","4etirnadcat","pyatnadcat ",
	 "shistnadcat","simnadcat","vosemnad cat","deviatnadcat"},
	{"dvadcat"},
	{"tridcat"},
	{"sorok"},
	{"piatdeciat"},
	{"shestdeciat"},
	{"semdeiat"},
	{"vosemdeciat"},
	{"devianosto"},
	{"sto"},
	{"dvesti"},
	{"tristo"},
	{"4etiristo"},
	{"pyatsot"},
	{"shestsot"},
	{"semsot"},
	{"vosemsot"},
	{"devyatsot"}
 };

 for(int x=2;x<10;x++)
	for(int y=1;y<10;y++)
	{
		s[x][y]=s[0][y];
	}
	printf("vvedite 4islo v deapozone ot 1 do 999 :");
	int i=0;
	while (i);
	{
		scanf("%d",&i);
		if(i<37)
		{
			if(i<29)
			{ 
				if (i<20)
				{
					if (i<10) printf("%s",s[0]);
					else 
					{
						if(i>=10 && i<20) printf("%s",s[1][i%10]);
					}
				}
				else 
				{
					if((i%10)==0) printf("%s",s[i/10][0]);
					else {printf("%s %s\n",s[i/10][0],s[i/10][i%10]);
					}
				}
			}
			else
			{
				if((i%100)==0) printf("%s",s[i/100+9][0]);
				else 
				{
					if ((i%10)==0) printf ("%s %s", s[i/100+9][0],s[i/10][0]);
					else
					{
						printf ("%s %s %s",s[i/100+9][0],s[i/10][0],s[i/10][i%10]);
					}
				}
			}
		}
		else {printf ("error!\n");}
	}
 system("pause");
 return 0;
}
Добавлено через 33 минуты
Цитата Сообщение от Динар Габбасов Посмотреть сообщение
while (i); { scanf("%d",&i); if(i<999) { if(i<99) { if (i<20) { if (i<10) printf("%s",s[0])
исправил на , но все равно проблема осталось
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.12.2011, 23:48
Здравствуйте! Я подобрал для вас темы с ответами на вопрос программа которая переводит введенные числа в буквенную начертанию (надо немного исправить) (C++):

Программа, которая переводит числа в слова - C++
Здрасти всем. Есть код: #include &lt;conio.h&gt; #include &lt;stdio.h&gt; #include &lt;iostream&gt; #include &lt;stdlib.h&gt; string...

Программа, которая запрашивает у пользователя 6-буквенную строку - C++
Напишите программу, которая запрашивает у пользователя 6-буквенную строку, а затем выводит на экран строку, составленную из 1,3 и 5 букв...

Программа которая переводит из 2ой системы в 10ую - C++
Создать программу которая переводит из двоичной системы в десятичную. P.S вообще то я знаю как переводить 2ую в 10ую, ну например -...

Не компилится программа, которая переводит градусы Цельсия по Фарангейту и наоборот - C++
Это 2 моя прога, первая была простая которая выводила Hello World так что не судите если код плохой,еще учусь. Нужно написать...

Программа, которая отправляет данные, введенные в нее - C++
Я С++ только начал изучать, но хотелось узнать, возможно ли сделать программу, которая отправляет данные, введенные в нее. Например, на...

Написать программу, которая переводит числа с шестнадцатеричной системы в десятичную - C++
С использованием функции hex, а также без неё.

1
fantompg
5 / 5 / 0
Регистрация: 22.11.2011
Сообщений: 86
01.10.2012, 16:04 #2
Подниму темку
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.10.2012, 16:04
Привет! Вот еще темы с ответами:

Написать программу, которая переводит числа по основанию 8 в 4. Выполнить операцию деления - C++
Написать программу, которая переводит числа по основанию 8 в 4. Выполнить операцию деления.

Составить рекурсивной функции, которая переводит числа из десятичной системы счисления в шестнадцатилетнюю - C++
Составить рекурсивной функции, которая переводит числа из десятичной системы счисления в шестнадцатилетнюю.

Напишите программу, которая считывает, введенные пользователем 2 числа, определяет и выводит на экран - C++
Помогите с программой по С++. Нужно решить данную задачу только при помощи &quot;Тернарного оператора&quot; и никак иначе. Напишите программу,...

Программа на C++, которая переводит цветовую модель RGB в модель HSV - C++
Всем привет! Я - начинающий программист. Мне нужна ваша помощь. Мне нужно сделать программу на C++, которая переводит цветовую модель RGB в...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru