помогите написать прогу

  • Автор темы -
  • Дата начала
Статус
Закрыто для дальнейших ответов.

Гость
#1
Даны натуральное число n, символы s1,...,sn, среди которых есть хотя бы одна точка. Преобразовать последовательность s1,...,sn, удалив из нее все запятые, предшествующие первой точке, и заменив знаком + все цифры 3, встречающиеся после первой точки.
 

Гость
#3
<!--QuoteBegin-Король+28:05:2004, 19:07 -->
<span class="vbquote">(Король @ 28:05:2004, 19:07 )</span><!--QuoteEBegin-->оксана
обязательно C++?[/quote]
да на Borland C++3.1
 
M

Mustang

Гость
#4
Вот тебе функция для этих целей... :blink:


Код:
char* ProccessString(char* s_source)
{
           char* ch, *pch;
           int            i_val=0;

           ch=strchr(s_source, '.');                 //находим первую точку
           pch=strchr(ch, '3');                        //назодим в строке начиная с первой точки цифру 3
           while(pch!=NULL)                           //и заменяем их все на '+'
           {
                       *pch='+';
                       pch=strchr(ch, '3');
           }
           *ch=0;                                       //сокрощаем строку до первой точки
           i_val=strlen(s_source);                   //находим длину строки, в которой нужно удалить запятые.
           *ch='.';                                      //востанавливаем исходную строку.
           
           for(int i=0; i<i_val; i++)                 //удаляем все запятые до первой точки
           {
                       pch=strchr(s_source, ',');
                       if(pch!=NULL)
                       {
                                   for(int i=0; i<strlen(pch); i++)
                                   {
                                               pch[i]=pch[i+1];
                                   }
                       }
           }
           return s_source;
}
 
Статус
Закрыто для дальнейших ответов.