Решить в Паскаль 1. Поменять местами слова в строках, состоящих из
Решить в Паскаль 1. Поменять местами слова в строчках, состоящих из двух слов. 2.Даны три строчки. Вывести самую длинноватую строку. (1-ая задачка - линейный метод, 2-ая - ветвление) ПРОШУ РЕБЯТА ПОЖАЛУЙСТА!!!
Задать свой вопрос1.
Нам дана строка из 2-ух слов. К примеру, 'ah-ha nanana'. Поначалу найдем индекс пробела в этой строке. Это делает функция pos(s1, s). Она возвращает 1-ый встретившийся индекс подстроки s1 в строке s. Если мы вызовем pos(' ', 'ah-ha nanana'), она возвратит 6. Сохраним это значение в переменную space.
Функция copy(s, pos, n) отдаёт подстроку строки s из n знаков, которая начинается в pos. Для копирования первого слова нам нужно брать подстроку, которая начинается с первого символа и имеет длину space-1. Под номером space в строке находится пробел, а в space+1 - начало второго слова.
Таким образом, copy('ah-ha nanana', 1, space-1) возвратит 'ah-ha', а copy('ah-ha nanana', space+1, length('ah-ha nanana')-space) - 'nanana'.
var
s, s1, s2: string;
space: longint;
begin
readln(s);
space := pos(' ', s);
s1 := copy(s, 1, space - 1);
s2 := copy(s, space + 1, length(s) - space);
s := s2 + ' ' + s1;
writeln(s);
end.
2.
Представим, что 1-ая введенная строчка - самая длинноватая. Если 2-ая строчка длиннее первой, изменим ответ. Если 3-я строчка длиннее самой длинноватой из первых 2-ух, изменим ответ.
Примечание: В переменной s мы поначалу храним первую введенную строку, а после ввода - максимальную. Если необходимо сохранить первую введенную строчку, лучше беречь наивысшую в отдельной переменной.
var
s, s1, s2: string;
begin
readln(s);
readln(s1);
readln(s2);
if length(s1) gt; length(s) then s := s1;
if length(s2) gt; length(s) then s := s2;
writeln(s);
end.
-
Вопросы ответы
Статьи
Информатика
Статьи
Математика.
Физика.
Математика.
Разные вопросы.
Разные вопросы.
Математика.
Разные вопросы.
Математика.
Физика.
Геометрия.