Форум программистов, компьютерный форум CyberForum.ru

Заменить числа числительными - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Выбор слов по образцу из строк текста. С++ http://www.cyberforum.ru/cpp-beginners/thread18827.html
Мне нужно написать программу, а я вообще ничего придумать не могу. Подскажите хотябы, что можно сделать=) В произвольном тексте, содержащем не более 10 строк, в каждой строке не более 80 символов, выбрать и напечатать слова по зпданному образцу *#*#*, где *-согласная, а #-гласная буквы. Я так понимаю текст можно вводить любой и в самом начале, а вот как заставить программу выводить слова не...
C++ Преобразование матрицы Дан двумерный массив. n-строк, 3-столбца. и числа k и L (k!=L),при этом k принадлежит промежутку(1;n) L промежутку (1;n).Преобразовать матрицу так,чтобы строка с исходным номером k,непосредственно следовала за строкой с исходным номером L.Сохранив порядок следования строк.:( http://www.cyberforum.ru/cpp-beginners/thread18823.html
C++ Сортировка массива по возрастанию
Помогите пожалуйста, а то выходит какой-то бред. Нужно напистаь прогу, а именно: имеется двумерный массив размерностью NxN, где N = 11. 2.Элементы массива задать случайным образом в диапазоне 0...50 (rand, этому я научилась;)). Отсортировать все столбцы методом выбора так, чтобы элементы в них располагались по возрастанию. Сортироват методом пузырьков!!! (Алгоритм состоит в повторяющихся проходах...
Генератор псевдослучайных чисел - проблема. C++
Очень нужно написать программу-генератор псевдослучайных чисел на языке С. Насколько я понимаю должна использоваться функция rand, но она генерирует случайные числа. Не могу понять как получить псевдослучайные. Буду очень признателен если напишите текст программы или хотя бы алгоритм, чтобы я смог с ней разобратся. Заранее спасибо за помощь!!
C++ Массив в порядке убывания http://www.cyberforum.ru/cpp-beginners/thread18798.html
:help:Срочно нужно массив в порядке убывания зафигачить с помощью любого алгоритма,хоть от болды!!!пожаааалуйста....))))))но одно условие через random!Я тут что то натворила...а че дальше хз)) #include<iomanip.h> #include<iostream.h> #include<stdio.h> #include<stdlib.h> int main (void) { const int arraySize = 10; //razmer massiva
C++ Алгоритм Хоара :wall:Помогите пожалуйста.. если задачка - Запрограмировать алгоритм Хоара сортировки одномерного массива действительных чисел.Подсчитать кол-во сравнений и перестановок элементов. Провести эксперимент с несколькими(порядка неск. десятков) массивами случайных чисел и выдать статистику л кл-ве сравнений и перестановок в каждом случае... буду оч. признателен если кто-то чем-то... подробнее

Показать сообщение отдельно
Laxus
Сообщений: n/a
18.12.2008, 13:35     Заменить числа числительными
Я там начал эксперементировать со всем, так что там уже все щас через сраку сделано..
Код
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#include <stdlib.h>
int padej(char x)
  {if(x=='И'||x=='и') return 1;
  if(x=='Р'||x=='р') return 2;
  if(x=='Д'||x=='д') return 3;
  if(x=='В'||x=='в') return 4;
  if(x=='Т'||x=='т') return 5;
  if(x=='П'||x=='п') return 6;
  printf("ЋиЁЎЄ* Ї*¤Ґ¦*!");
  return 1;
  }
void n_part(long int n,int p,int* np1,int* np2,int* np3)
  {long int del=1;
  long int k;
  switch(p)
     {case 3: del=del*1000;
     case 2: del=del*1000;
     case 1: del=del*1000; break;
     case 0: del=1;
     }
  if(n!=3)
    k=n/del-n/(del*1000)*1000;
  else
    k=n/del;
  printf("\n n=%ld p=%d del=%ld k=%ld \n",n,p,del,k);
  *np1=k/100;
  *np2=k/10-*np1*10;
  *np3=k-*np1*100-*np2*10;
  }
void sklonyator(long int n,int padej,char* k)
  {int i,np1,np2,np3;
  char rez[200]="";
  if(n)
    /*{if(n<0)
      {strcat(rez,"минус ");
      n=-n;
      }*/

    for(i=3;i>=0;i--)
      {n_part(n,i,&np1,&np2,&np3);
      if(np1||np2||np3)
	  {
	//sotny
      switch(np1)
	{case 1:
	  switch(padej)
	    {case 1:case 4:strcat(rez,"сто "); break;
	    default: strcat(rez,"ста ");
	    }
	  break;
	case 2:
	  switch(padej)
	    {case 1:case 4:strcat(rez,"двести "); break;
	    case 2:strcat(rez,"двухсот "); break;
	    case 3:strcat(rez,"двумстам "); break;
	    case 5:strcat(rez,"двумстами "); break;
	    case 6:strcat(rez,"двухстах "); break;
	    }
	  break;
	case 3:
	  switch(padej)
	    {case 1:case 4:strcat(rez,"триста "); break;
	    case 2:strcat(rez,"трехсот "); break;
	    case 3:strcat(rez,"тремстам "); break;
	    case 5:strcat(rez,"тремястами "); break;
	    case 6:strcat(rez,"трехстах "); break;
	    }
	  break;
	case 4:
	  switch(padej)
	    {case 1:case 4:strcat(rez,"четыреста "); break;
	    case 2:strcat(rez,"четырехсот "); break;
	    case 3:strcat(rez,"четыремстам "); break;
	    case 5:strcat(rez,"четырьмястами "); break;
	    case 6:strcat(rez,"четырехстах "); break;
	    }
	  break;
	case 5:
	  switch(padej)
	    {case 1:case 4:strcat(rez,"патьсот "); break;
	    case 2:strcat(rez,"пятисот "); break;
	    case 3:strcat(rez,"пятистам "); break;
	    case 5:strcat(rez,"пятьюстами "); break;
	    case 6:strcat(rez,"пятистах "); break;
	    }
	  break;
	case 6:
	  switch(padej)
	    {case 1:case 4:strcat(rez,"шестьсот "); break;
	    case 2:strcat(rez,"шестисот "); break;
	    case 3:strcat(rez,"шестистам "); break;
	    case 5:strcat(rez,"шестьюстами "); break;
	    case 6:strcat(rez,"шестистах "); break;
	    }
	  break;
	case 7:
	  switch(padej)
	    {case 1:case 4:strcat(rez,"семьсот "); break;
	    case 2:strcat(rez,"семисот "); break;
	    case 3:strcat(rez,"семистам "); break;
	    case 5:strcat(rez,"семьюстами "); break;
	    case 6:strcat(rez,"семистах "); break;
	    }
	  break;
	case 8:
	  switch(padej)
	    {case 1:case 4:strcat(rez,"восемьсот "); break;
	    case 2:strcat(rez,"восьмисот "); break;
	    case 3:strcat(rez,"восьмистам "); break;
	    case 5:strcat(rez,"восмьюстами "); break;
	    case 6:strcat(rez,"восьмистах "); break;
	    }
	  break;
	case 9:
	  switch(padej)
	    {case 1:case 4:strcat(rez,"девятьсот "); break;
	    case 2:strcat(rez,"девятисот "); break;
	    case 3:strcat(rez,"девятистам "); break;
	    case 5:strcat(rez,"девятьюстами "); break;
	    case 6:strcat(rez,"девятистах "); break;
	    }
	  break;
	}
      //desyatki
      switch(np2)
	{case 1:
	  switch(np3)
	    {case 0:
	      switch(padej)
		{case 1:case 4:strcat(rez,"десять "); break;
		case 2:case 3:case 6:strcat(rez,"десяти "); break;
		case 5:strcat(rez,"десятью "); break;
		}
	      break;
	    case 1:
	      switch(padej)
		{case 1:case 4:strcat(rez,"одиннадцать "); break;
		case 2:case 3:case 6:strcat(rez,"одиннадцати "); break;
		case 5:strcat(rez,"одиннадцатью "); break;
		}
	      break;
	    case 2:
	      switch(padej)
		{case 1:case 4:strcat(rez,"двенадцать "); break;
		case 2:case 3:case 6:strcat(rez,"двенадцати "); break;
		case 5:strcat(rez,"двенадцатью "); break;
		}
	      break;
	    case 3:
	      switch(padej)
		{case 1:case 4:strcat(rez,"тринадцать "); break;
		case 2:case 3:case 6:strcat(rez,"тинадцати "); break;
		case 5:strcat(rez,"тринадцатью "); break;
		}
	      break;
	    case 4:
	      switch(padej)
		{case 1:case 4:strcat(rez,"четырнадцать "); break;
		case 2:case 3:case 6:strcat(rez,"четырнадцати "); break;
		case 5:strcat(rez,"четырнадцатью "); break;
		}
	      break;
	    case 5:
	      switch(padej)
		{case 1:case 4:strcat(rez,"пятнадцать "); break;
		case 2:case 3:case 6:strcat(rez,"пятнадцати "); break;
		case 5:strcat(rez,"пятнадцатью "); break;
		}
	      break;
	    case 6:
	      switch(padej)
		{case 1:case 4:strcat(rez,"шестнадцать "); break;
		case 2:case 3:case 6:strcat(rez,"шестнадцати "); break;
		case 5:strcat(rez,"шестнадцатью "); break;
		}
	      break;
	    case 7:
	      switch(padej)
		{case 1:case 4:strcat(rez,"семнадцать "); break;
		case 2:case 3:case 6:strcat(rez,"семнадцати "); break;
		case 5:strcat(rez,"семнадцатью "); break;
		}
	      break;
	    case 8:
	      switch(padej)
		{case 1:case 4:strcat(rez,"восемнадцать "); break;
		case 2:case 3:case 6:strcat(rez,"восемнадцати "); break;
		case 5:strcat(rez,"восемнадцатью "); break;
		}
	      break;
	    case 9:
	      switch(padej)
		{case 1:case 4:strcat(rez,"девятнадцать "); break;
		case 2:case 3:case 6:strcat(rez,"девятнадцати "); break;
		case 5:strcat(rez,"девятнацатью "); break;
		}
	    }
	  break;
	case 2:
	  switch(padej)
		{case 1:case 4:strcat(rez,"двадцать "); break;
		case 2:case 3:case 6:strcat(rez,"двадцати "); break;
		case 5:strcat(rez,"двадцатью "); break;
		}
	  break;
	case 3:
	  switch(padej)
		{case 1:case 4:strcat(rez,"тридцать "); break;
		case 2:case 3:case 6:strcat(rez,"тридцати "); break;
		case 5:strcat(rez,"тридцатью "); break;
		}
	  break;
	case 4:
	  switch(padej)
		{case 1:case 4:strcat(rez,"сорок "); break;
		default:strcat(rez,"сорока "); break;
		}
	  break;
	case 5:
	  switch(padej)
		{case 1:case 4:strcat(rez,"пятьдесят "); break;
		case 2:case 3:case 6:strcat(rez,"пятидесяти "); break;
		case 5:strcat(rez,"пятьюдесятью "); break;
		}
	  break;
	case 6:
	  switch(padej)
		{case 1:case 4:strcat(rez,"шестьдесят "); break;
		case 2:case 3:case 6:strcat(rez,"шестидесяти "); break;
		case 5:strcat(rez,"шестьюдесятью "); break;
		}
	  break;
	case 7:
	  switch(padej)
		{case 1:case 4:strcat(rez,"семьдесят "); break;
		case 2:case 3:case 6:strcat(rez,"семидесяти "); break;
		case 5:strcat(rez,"семьюдесятью "); break;
		}
	  break;
	case 8:
	  switch(padej)
		{case 1:case 4:strcat(rez,"восемьдесят "); break;
		case 2:case 3:case 6:strcat(rez,"восьмидесяти "); break;
		case 5:strcat(rez,"восмьюдесятью "); break;
		}
	  break;
	case 9:
	  switch(padej)
		{case 1:case 4:strcat(rez,"девяносто "); break;
		default:strcat(rez,"девяноста "); break;
		}
	}
      //edinicy
      if(np2!=1)
	{switch(np3)
	  {case 1:
	    if(i==1)
	      {switch(padej)
		{case 1:strcat(rez,"одна "); break;
		case 4:strcat(rez,"одну "); break;
		default:strcat(rez,"одной "); break;
		}
	      break;
	      }
	    switch(padej)
		{case 1:case 4:strcat(rez,"один "); break;
		case 2:strcat(rez,"одного "); break;
		case 3:strcat(rez,"одному "); break;
		case 5:strcat(rez,"одним "); break;
		case 6:strcat(rez,"одном "); break;
		}
	    break;
	  case 2:
	    switch(padej)
		{case 1:case 4:
		  if(i==1){strcat(rez,"две "); break;}
		  strcat(rez,"два "); break;
		case 2: case 6:strcat(rez,"двух "); break;
		case 3:strcat(rez,"двум "); break;
		case 5:strcat(rez,"двумя "); break;
		}
	    break;
	  case 3:
	    switch(padej)
		{case 1:case 4:strcat(rez,"три "); break;
		case 2: case 6:strcat(rez,"трех "); break;
		case 3:strcat(rez,"трем "); break;
		case 5:strcat(rez,"тремя "); break;
		}
	    break;
	  case 4:
	     switch(padej)
		{case 1:case 4:strcat(rez,"четыре "); break;
		case 2: case 6:strcat(rez,"четырех "); break;
		case 3:strcat(rez,"четырем "); break;
		case 5:strcat(rez,"четырьмя "); break;
		}
	    break;
	  case 5:
	    switch(padej)
		{case 1:case 4:strcat(rez,"пять "); break;
		case 2:case 3:case 6:strcat(rez,"пяти "); break;
		case 5:strcat(rez,"пятью "); break;
		}
	    break;
	  case 6:
	    switch(padej)
		{case 1:case 4:strcat(rez,"шесть "); break;
		case 2:case 3:case 6:strcat(rez,"шести "); break;
		case 5:strcat(rez,"шестью "); break;
		}
	    break;
	  case 7:
	    switch(padej)
		{case 1:case 4:strcat(rez,"семь "); break;
		case 2:case 3:case 6:strcat(rez,"семи "); break;
		case 5:strcat(rez,"семью "); break;
		}
	    break;
	  case 8:
	    switch(padej)
		{case 1:case 4:strcat(rez,"восемь "); break;
		case 2:case 3:case 6:strcat(rez,"восьми "); break;
		case 5:strcat(rez,"восмью "); break;
		}
	    break;
	  case 9:
	    switch(padej)
		{case 1:case 4:strcat(rez,"девять "); break;
		case 2:case 3:case 6:strcat(rez,"девяти "); break;
		case 5:strcat(rez,"девятью "); break;
		}
	  }
	}
	switch(i)
	  {case 1:
	    switch(np3)
	      {case 1:
		switch(padej)
		  {case 1:strcat(rez,"тысяча "); break;
		  case 2:strcat(rez,"тысячи "); break;
		  case 3:strcat(rez,"тысяче "); break;
		  case 4:strcat(rez,"тысячу "); break;
		  case 5:strcat(rez,"тысячью "); break;
		  case 6:strcat(rez,"тысяче "); break;
		  }
		break;
	      case 2:case 3:case 4:
		switch(padej)
		  {case 1:case 4:strcat(rez,"тысячи "); break;
		  case 2:strcat(rez,"тысяч "); break;
		  case 3:strcat(rez,"тысячам "); break;
		  case 5:strcat(rez,"тысачами "); break;
		  case 6:strcat(rez,"тысячах "); break;
		  }
		break;
	      default:
		switch(padej)
		  {case 1:case 2:case 4:strcat(rez,"тысяч "); break;
		  case 3:strcat(rez,"тысячам "); break;
		  case 5:strcat(rez,"тысячами "); break;
		  case 6:strcat(rez,"тысячах "); break;
		  }
	      }
	    break;
	  case 2:
	    switch(np3)
	      {case 1:
		switch(padej)
		  {case 1:case 4:strcat(rez,"миллион "); break;
		  case 2:strcat(rez,"миллиона "); break;
		  case 3:strcat(rez,"миллиону "); break;
		  case 5:strcat(rez,"миллионом "); break;
		  case 6:strcat(rez,"миллионе "); break;
		  }
		break;
	      case 2:case 3:case 4:
		switch(padej)
		  {case 1:case 4:strcat(rez,"миллиона "); break;
		  case 2:strcat(rez,"миллионов "); break;
		  case 3:strcat(rez,"миллионам "); break;
		  case 5:strcat(rez,"миллионами "); break;
		  case 6:strcat(rez,"миллионах "); break;
		  }
		break;
	      default:
		switch(padej)
		  {case 1:case 2:case 4:strcat(rez,"миллионов "); break;
		  case 3:strcat(rez,"миллионам "); break;
		  case 5:strcat(rez,"миллионами "); break;
		  case 6:strcat(rez,"миллионах "); break;
		  }
	      }
	    break;
	  case 3:
	    switch(np3)
	      {case 1:
		switch(padej)
		  {case 1:case 4:strcat(rez,"миллиард "); break;
		  case 2:strcat(rez,"миллиарда "); break;
		  case 3:strcat(rez,"миллиарду "); break;
		  case 5:strcat(rez,"миллиардом "); break;
		  case 6:strcat(rez,"миллиарде "); break;
		  }
		break;
	      case 2:case 3:case 4:
		switch(padej)
		  {case 1:case 4:strcat(rez,"миллиарда "); break;
		  case 2:strcat(rez,"миллиардов "); break;
		  case 3:strcat(rez,"миллиардам "); break;
		  case 5:strcat(rez,"миллиардами "); break;
		  case 6:strcat(rez,"миллиардах "); break;
		  }
		break;
	      default:
		switch(padej)
		  {case 1:case 2:case 4:strcat(rez,"миллиардов "); break;
		  case 3:strcat(rez,"миллиардам "); break;
		  case 5:strcat(rez,"миллиардами "); break;
		  case 6:strcat(rez,"миллиардах "); break;
		  }
	      }
	  }
      }
      }
      }
  strcat(k,rez);
  }
void main()
  {char txt[50][80];
  char str[40000];
  char chislo[11];
  char file[200];
  char rezultat[300];
  printf("\n  ‚ўҐ¤ЁвҐ ?¬п д*©«* (Їгвм): ");
  scanf("%s",&file);
  FILE *f;
  f=fopen(file,"r+");

  FILE *g;
  g=fopen("log.txt","w");
  int t;

  int i=0,j=0;
  do
   {fgets(txt[i],79,f);
   t=strlen(txt[i]);
   txt[i][80]='\0';
   strcat(str,txt[i]);
   i++;
   }
  while(!feof(f));
  i=0;
  fprintf(g,"%s",&str);
  //fprintf(g,"%s",&str);
  fclose(g);
  while(str[j]) //Ї®Є* Ґбвм бЁ¬ў®«л
    {if(isdigit(str[j])) //Ґб«Ё бЁ¬ў®« - бЁ¬ў®« жЁдал
      {while(isdigit(str[j]))  //Ї®Є* бЁ¬ў®« - бЁ¬ў®« жЁдал
	{chislo[i]=str[j]; // §*ЇЁбм зЁб«* Ё§ жЁда
	j++;
	i++;
	}
	chislo[i]='\0';
	i=0;
    //  while(str[j]!='(')  //гЄ*§*вҐ«м ¤®иҐ« ¤® бЄ®ЎЄЁ
    //	{j++;
     //	}
      j++; //гЄ*§*⥫м ** Ї*¤Ґ¦Ґ
      sklonyator(atol(chislo),padej(str[j]),rezultat);
      fprintf(g,"%s",&rezultat);
      j=j+2;//гЄ*§*вҐ«м §* бЄ®ЎЄ®©
      }
    fprintf(g,"%s",str[j]);
    j++;
    }
    fclose(f);
  }
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru