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

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

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

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

Помогите пожалуйста с задачей

stervoshka

Ученик
Регистрация
16 Дек 2010
Сообщения
3
Реакции
0
Баллы
0
Помогите пожалуйста с задачей

Помогите пожалуйста...Очень нужно решить задачку в Паскале...Получаю сейчас второе заочное и задали задачку...А я уже так давно их не решала, боюсь что не справлюсь или напартачу так, что задачу не примут...:tehnari_ru_1019:

Нужно составить программу, выводящую строку "первое слово лесенкой", а остальные в строку...Например, Фамилия под углом лесенкой, имя отчество в строку...В программе должен быть обеспечен ввод строки и вывод на экран результатов. По окончании каждого расчета и просмотра результатов предусмотреть очистку экрана,возобновление расчетов с другой строкой("бесконечный цикл") или выход из программы.

Вот такая задача...Очень прошу помочь решить...ну или может вы знаете, где решались похожие задачи...что бы хотя бы посмотреть...а то уже давно весь паскаль из головы вылетел:tehnari_ru_117:
 
Для решения нужно использовать расширенный набор строковых функций из библиотеки crt.
Если никто не напишет - будет вам листинг.
 
Для решения нужно использовать расширенный набор строковых функций из библиотеки crt.
Если никто не напишет - будет вам листинг.
Ну не знаю - если я правильно понял задание насчет "лесенки", то вроде можно и по-простому, по рабоче-крестьянски:
Код:
Uses CRT;
VAR
 S:String;
 i:Byte;
 j:Integer;
BEGIN
 Repeat
  ClrScr;
  WriteLn('Enter the string:');
  ReadLn(S);
  If S<>'' then
   begin
    i:=1;
    repeat
     for j:=1 to (i-1) do
      Write(' ');
     WriteLn(S[i]);
     Inc(i);
    until S[i]=' ';
    repeat
     Inc(i);
    until S[i]<>' ';
    for j:=1 to i do
     Write(' ');
    for j:=i to Length(S) do
     Write(S[j]);
    WriteLn;
    ReadLn;
   end;
 Until S='';
END.
Программа выходит из цикла при вводе пустой строки.
 
Спасибо)))
Но почему-то у меня программа выводит просто слово в столбик а потом повторяет его
Я например пишу Иванов Иван Иванович и программа мне выводит Иванов в столбик а потом повторяет... А как сделать что бы Иванов было диагонально т.е лесницей каждая буква как по ступеням а потом писалось два остальных слова в строчку??
Заранее спасибо)))
 
Спасибо)))
Но почему-то у меня программа выводит просто слово в столбик а потом повторяет его
Я например пишу Иванов Иван Иванович и программа мне выводит Иванов в столбик а потом повторяет... А как сделать что бы Иванов было диагонально т.е лесницей каждая буква как по ступеням а потом писалось два остальных слова в строчку??
Заранее спасибо)))
Вы знаете - я просто в недоумении... Сейчас запустил, и вот что у меня:
Ivanov.webp
Даже и не знаю, чем помочь - тут явные "задвиги" транслятора.
P.S. Впрочем, подозреваю, что дело тут не в трансляторе, а в том, что Вы пытаетесь смотреть результат каким-то вьюером, который попросту автоматически срубает пробелы в начале строки. А вот насчет того, что "повторяет" - тут совсем идей нет.
На всякий случай - поясню алгоритм работы программы.
1. Вводится строка. Если она пустая - программа прерывается, если нет - едет дальше.
2. Символы строки, расположенные до первого пробела, выводятся так:
а) каждый - в своей строке;
б) перед выводом очередного символа на экран выводятся пробелы в количестве (номер символа)-1.
3. Символы строки, стоящие после первого пробела, выводятся в одну строку подряд, начиная с позиции конца "лесенки" плюс 1.
Вот, собственно, и всё. Примитивно - даже и ошибкам-то взяться неоткуда!
 
Ясно..Попробую еще раз...может действительно что-то с программой...Еще раз спасибо))))
 
Назад
Сверху