IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Работа с текстом, (строки)
MikrON
сообщение 20.12.2004 1:49
Сообщение #1


Гость






Приветствую вас программисты 20 века=)
у меня большая проблема... я не знаю как сделать нескольк программ=/
Если вы нелень помогите студенту первого курса...
задачи следующие
1. ЗАДАН ТЕКСТ. НАПЕЧАТАТЬ СЛОВА ЭТОГО ТЕКСТА В ПОРЯДКЕ УВЕЛИЧЕНИЯ КОЛИЧЕСТВА СИМВОЛОВ В СЛОВАХ.
2. ЗАДАН ТЕКСТ. НАПЕЧАТАТЬ ТЕ СЛОВА, ПЕРЕД КОТОРЫМИ НАХОДИТЬСЯ СЛОВА С МЕНЬШИМ КОЛИЧЕСТВОМ БУКВ.
3. 'МЯТРИЦЯ' ЗАДАНА МАТРИЦА ЦЕЛЫХ ЧИСЕЛ. ВЫПОЛНИТЬ СОРТИРОВКУ ЭЛЕМЕНТОВ ГОАВНОЙ ДИАГОНАЛИ МАТРИЦЫ ПО ВОЗРАСТАНИЮ.
Из всех 12 индивидульных задания я сдедал 9 сам
:P Эти для меня ад ПОМОГИТЕ... :p2:
Отблагодарю и надеюсь тоже чем нибудь помогу... :yessss:
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
xds
сообщение 20.12.2004 7:59
Сообщение #2


N337
****

Группа: Пользователи
Сообщений: 737
Пол: Мужской

Репутация: -  26  +


Задача 1:
Код

program Words1;

var
 s: String;
 Words: array[0..126] of Integer;
 Lens: array[0..126] of Integer;
 i, j, jm, n: Integer;
 f: Boolean;

procedure SwapInt(var a, b: Integer);
var
 t: Integer;
begin
 t := a;
 a := b;
 b := t;
end;

begin
 Write('s>');
 Readln(s);

 { Выделение слов }
 s := s + ' ';
 n := 0;
 f := False;
 for i := 1 to Length(s) do
   if (s[i] = ' ') or (s[i] = #9) then
     begin
       if f then
         begin
           Lens[n] := i - Words[n];
           Inc(n);
           f := False;
         end
     end
   else
     if not f then
       begin
         Words[n] := i;
         f := True;
       end;

 { Сортировка и вывод }
 for i := 0 to n - 1 do
   begin
     jm := i;
     for j := i + 1 to n - 1 do
       if Lens[j] < Lens[jm] then jm := j;
     SwapInt(Words[i], Words[jm]);
     SwapInt(Lens[i], Lens[jm]);
     Writeln(Copy(s, Words[i], Lens[i]));
   end;
end.


--------------------
The idiots are winning.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


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

 



- Текстовая версия 18.07.2025 20:22
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"