profile
Размещено 6 лет назад по предмету Информатика от idolmcweazzy

Решить в Паскаль 1. Поменять местами слова в строках, состоящих из двух слов. 2.Даны три строки. Вывести самую длинную строку. (Первая задача - линейный алгоритм, вторая - ветвление) ПРОШУ РЕБЯТА ПОЖАЛУЙСТА!!!

  1. Ответ на вопрос
    Ответ на вопрос дан DexelGamer

    1.

    Нам дана строка из двух слов. Например, 'ah-ha nanana'. Сначала найдем индекс пробела в этой строке. Это делает функция pos(s1, s). Она возвращает первый встретившийся индекс подстроки 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.

    Предположим, что первая введенная строка - самая длинная. Если вторая строка длиннее первой, изменим ответ. Если третья строка длиннее самой длинной из первых двух, изменим ответ.

    Примечание: В переменной s мы сначала храним первую введенную строку, а после ввода - максимальную. Если нужно сохранить первую введенную строку, лучше хранить максимальную в отдельной переменной.

    var

     s, s1, s2: string;

    begin

     readln(s);

     readln(s1);

     readln(s2);

     if length(s1) > length(s) then s := s1;

     if length(s2) > length(s) then s := s2;

     writeln(s);

    end.

    1. Ответ на вопрос
      Ответ на вопрос дан DexelGamer
      Нам дана строка из двух слов. Например, 'ah ha'. Функция copy(s, pos, n) возвращает подстроку строки s из n символов, которая начинается в pos. Для копирования первого слова нам нужно взять подстроку, которая начинается в первом символе и имеет длину два. Третим в строке идет пробел, а четвертым - начало второго слова.
    2. Ответ на вопрос
      Ответ на вопрос дан DexelGamer
      Таким образом, copy('ah ha', 1, 2) вернет 'ah', а copy('ah ha', 4, 2) - 'ha'.
    3. Ответ на вопрос
      Ответ на вопрос дан idolmcweazzy
      а в первой задаче не надо указывать это ах ха
    4. Ответ на вопрос
      Ответ на вопрос дан DexelGamer
      Oh, не заметил, что слова не всегда длины 2. Сейчас исправлю.
    5. Ответ на вопрос
      Ответ на вопрос дан DexelGamer
      Исправил. Прошу прощения.
Не тот ответ на вопрос, который вам нужен?
Найди верный ответ
Самые новые вопросы
tegysigalpa2012
Русский язык - 6 лет назад

Помогите решить тест по русскому языку тест по русскому языку «местоимение. разряды местоимений» для 6 класса 1. укажите личное местоимение: 1) некто 2) вас 3) ни с кем 4) собой 2. укажите относительное местоимение: 1) кто-либо 2) некоторый 3) кто 4) нам 3. укажите вопросительное местоимение: 1) кем-нибудь 2) кем 3) себе 4) никакой 4. укажите определительное местоимение: 1) наш 2) который 3) некий 4) каждый 5. укажите возвратное местоимение: 1) свой 2) чей 3) сам 4) себя 6. найдите указательное местоимение: 1) твой 2) какой 3) тот 4) их 7. найдите притяжательное местоимение: 1) самый 2) моего 3) иной 4) ничей 8. укажите неопределённое местоимение: 1) весь 2) какой-нибудь 3) любой 4) этот 9. укажите вопросительное местоимение: 1) сколько 2) кое-что 3) она 4) нами 10. в каком варианте ответа выделенное слово является притяжательным местоимением? 1) увидел их 2) её нет дома 3) её тетрадь 4) их не спросили

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.