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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.01.2012, 23:46   #1
Shurachka
Новичок
Джуниор
 
Регистрация: 26.01.2012
Сообщений: 5
Радость задача С

Условие: Дано вещественное число в формате: ХХ.ХХ, вывести словесное описание этого числа. Пример: 54.23 – пятьдесят четыре целые, двадцать три сотые. При реализации программы использовать оператор выбора switch.
==============
как вам моё решение? норм или неочень ?

Код:
#include <stdio.h>
#include <math.h>
int main()

{
int a,b,c,i,j,x,y;
float v;
printf ( "vvedite chislo \n" ); scanf ( "%f", &v );
c=v*100; b=100; y=10;
    for ( i = 1; i <= 2; i ++ )
     {
a=c/b; c= c%b; b=b/100;
if (a>=10 && a<=19)
{
 switch ( a ) {
 case 10: printf("десять "); break; case 11: printf("одиннадцать "); break; case 12: printf("двенадцать "); break; case 13: printf("тринадцать "); break; 
 case 14: printf("четырнадцать "); break; case 15: printf("пятнадцать "); break; case 16: printf("шестнадцать "); break; case 17: printf("семнадцать "); break; 
 case 18: printf("восемнадцать "); break; case 19: printf("девятнадцать "); break; default: printf("\n "); }
			if (i==1) { printf("целых "); } else { printf("сотых \n");}
 }

 else  {
     for (j=1; j<=2; j++)
			  {
     x=a/y; a=a%y; y=y/10;

 if (j==1) { switch ( x ) {
 case 2: printf("двадцать "); break; case 3: printf("тридцать "); break; case 4: printf("сорок "); break; case 5: printf("пятьдесят "); break;
 case 6: printf("шестьдесят "); break; case 7: printf("семьдесят "); break; case 8: printf("восемьдесят "); break; case 9: printf("девяносто "); break; default: printf("\n "); } }
 
  else { switch ( x ) {
 case 0: printf(" "); case 1: printf("одна "); break; case 2: printf("две "); break; case 3: printf("три "); break; case 4: printf("четыре "); break;
 case 5: printf("пять "); break; case 6: printf("шесть "); break; case 7: printf("семь "); break; case 8: printf("восемь "); break;
 case 9: printf("девять "); break;
 default: printf("\n ");} }
                      }
			                                                                  if (i==1) { if (x>=2 && x<=4) printf("целые ");
                                                                                                     else printf("целых "); }
			                                                                  else {  if (x>=2 && x<=4) printf("сотые \n");
                                                                                                     else printf("сотых \n"); }
	   }
     	
	}
}

Последний раз редактировалось Shurachka; 26.01.2012 в 23:55.
Shurachka вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задача о стрелках (задача Майхелла) Silly Student Помощь студентам 0 14.12.2011 22:20
Задача на оптимальный расчет маршрута (задача в презентации) в табличном процессоре Excel Toofed Помощь студентам 0 30.11.2011 01:12
Задача минимизации дисбаланса на линии сборки (задача минимакса) LenZab Microsoft Office Excel 13 13.03.2011 22:51