На главную
ПРАВИЛА FAQ Помощь Участники Календарь Избранное DigiMania RSS
msm.ru
! Правила раздела
1. Не создавайте несколько одинаковых тем, ибо модератор может расценить их, как спам и удалить все.
2. Для решения задач по GPSS есть отдельная тема. Все задачи по GPSS опубликовывать в этой теме! Перед опубликовыванием вашей задачи просмотрите всю тему, возможно вы сразу найдете решение.
3. Давайте вашим темам ОСМЫСЛЕННЫЕ названия, а также указывайте язык программирования. Пример: [Pascal]:Работа с файлами и записями.
4. Использования тега CODE обязательно при публикации текста программы.

Темы, оформленные с явным игнорированием правил и отсутствием смысла, будут закрыты/удалены!
Вам помогли? Напишите об этом здесь (в портфолио фрилансера)

Фрилансерам:
5. Демпинг цен запрещен (даже если Вы готовы работать бесплатно). Цены обсуждаются в приватном общении. Если вы готовы рещить задачу бесплатно, просто решите ее быстрее, чем возникнет предложение сделать это за деньги.
6. Пользователям, входящим в группу Newbie, запрещается предлагать свои услуги (завуалированно в т.ч.)
7. В посте с предложением выполнить работу, обязательно указывать ссылку на свое портфолио в Отзывы, Благодарности, Портфолио Это правило работает и в том случае, если вы выполняете работу бесплатно.
8. Реклама (даже завуалированная) своих фриланских сайтов запрещена

Нарушение данных пунктов влечет до RO или БАНА (при неоднократом)
Модераторы: ttiger, mikefreelance, Rust
  
    > Помогите срочно
      вот само задание
      п.1. - Напечатать те слова, отличные от последнего слова, в которых наибольшее количество букв, упорядоченных по алфавиту.
      п.2. - Напечатать все слова, отличные от последнего слова. Если слово четной длины, заменить все строчные гласные буквы прописными.

      а вот что есть
      Program LR2;
      var
      s,s1:string;
      i,x,j,count,countpr,a,b,max,imax:integer;
      words:array[1..255]of string;
      schet:array[1..255]of integer;

      begin
      writeln('Введите строку'); {запрос строки задания}
      readln(S); {считывание и сохранение строки задания}

      while pos(' ',s)>0 do
      delete (s,pos(' ',s),1); {цикл удаляющий лишние пробелы}

      count:=length(s);

      if s[count]=' 'then
      Delete(s,count,1); {удаляем пробел в конце строки если он есть}
      if s[1]=' '
      then
      begin
      Delete(s,1,1);
      count:=count-1; {удаляем пробел в начале строки если он есть}
      end;

      countpr:=0;
      for i:=1 to count do {цикл для нахождения количества слов}
      begin
      if (s[i]=' ') or (i=count)then
      inc(countpr);
      end;

      for i:=1 to countpr do {выделяем слова в строке в отдельный массив}
      begin
      j:=0;
      if count=0 then break;
      repeat inc(j)
      until s[j]=' ';
      words[i]:=copy(s,1,j-1);
      delete(s, 1, j);
      end;

      for i:=1 to countpr do {создаем массив со счетом}
      begin {количества букв в алфавитном порядке}
      for j:=1 to length(words[i]) do
      begin
      if words[i,j]<words[i,j+1] then
      a:=a+1
      else
      begin
      if b<=a
      then b:=a; a:=0;
      end;
      end;
      schet[i]:=b;
      b:=0;
      end;

      max:=0;
      for i:=1 to countpr do {определение максимального количества}
      begin {упорядоченных букв в алфавитном порядке}
      if max<schet[i] then
      begin
      max:=schet[i];
      imax:=i;
      end;
      end;

      for i:=1 to countpr do {вывод слов отличные от последнего слова}
      begin {в которых наибольшее количество букв}
      if max=schet[i] then {упорядоченных по алфавиту}
      begin
      if words[i]<>words[countpr] then
      write(words[i],' ');

      end;
      end;
      readln;


      for i:=1 to countpr do {все слова, отличные от последнего слова}
      if length(words[i]) mod 2=0 then {если слово четной длинны, заменить все}
      {строчные гласные буквы прописными}
      begin
      for j:=1 to length(words[i]) do
      begin
      if words[i,j] in ['e','y','u','i','o','a'] then
      words[i,j]:=UpCase(words[i,j]);
      end;
      end;
      for i:=1 to countpr do
      begin
      if words[i]<>words[countpr] then
      write (words[i],' ');
      end;

      Readln;

      end.



      помогите пожалуйста исправить
      1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
      0 пользователей:


      [ Script Execution time: 0,0547 ]   [ 14 queries used ]   [ Generated: 25.03.17, 23:50 GMT ]