• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Помогите написать задачи на Паскале

Саня111

Ученик
Регистрация
18 Июн 2009
Сообщения
9
Реакции
0
Баллы
0
Помогите написать задачи на Паскале

1.Поменять местами первую и последнюю фамилии в списке.
2.Задан список из десяти городов. Поменять местами названия последнего города и любого из городов, название которого оканчивается на букву «к».
3.Задан текст, состоящий из слов, разделенных одним или несколькими пробелами. Сформируйте новый текст, включив в него слова заданного текста, разделенными только одним пробелом
 
2.Задан список из десяти городов. Поменять местами названия последнего города и любого из городов, название которого оканчивается на букву «к».

VAR
T:ARRAY[1..10] of STRING;
LastTown:String;
lng:BYTE;
i,i_k:INTEGER;

BEGIN
FOR i:=1 TO 10 DO
BEGIN
Write('Enter the town number ',i:2,' ');
ReadLn(T);
END;
i_k:=0;
i:=0;
REPEAT
INC(i);
lng:=Length(T);
IF T[lng]='к' THEN i_k:=i;
UNTIL (i_k>0) OR ((i_k=0) AND (i=10));
IF i_k=0 THEN Writeln('There are no towns ending with "к"') ELSE
BEGIN
LastTown:=T[10];
T[10]:=T[i_k];
T[i_k]:=LastTown;
FOR i:=1 TO 10 DO
WriteLn(T);
END;
ReadLn;
END.

3.Задан текст, состоящий из слов, разделенных одним или несколькими пробелами. Сформируйте новый текст, включив в него слова заданного текста, разделенными только одним пробелом

Считаем, что исходный текст сидит в файле d, преобразованный - в файле 'd1', и оба файла находятся в корневом каталоге диска С:.

VAR
f,f1:TEXT;
ch:CHAR;
BEGIN
Assign(f,'C:\d');
ReSet(f);
Assign(f1,'C:\d1');
ReWrite(f1);
REPEAT
Read(f, ch);
Write(f1,ch);
IF (ch=' ') AND (NOT EoF(f)) THEN
BEGIN
REPEAT
Read(f,ch);
UNTIL ch<>' ';
Write(f1,ch);
END;
UNTIL EoF(f);
Close(f);
Close(f1);
END.
 
Назад
Сверху