Важная информация
Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 12

Тема: Программа переворачивающия слова

  1. #1 Программа переворачивающия слова 
    Новичок
    Регистрация
    07.10.2011
    Сообщений
    11
    Сказал(а) спасибо
    2
    Поблагодарили 0 раз(а) в 0 сообщениях
    В заданном предложении, не содержащем знаки препинания, тире, двоеточия и т.д., заменить каждое слово перевернутым. Например, если исходное предложение А роза упала на лапу Азора, то результатом должно быть следующее предложение: А азор алапу ан упал арозА. Слова в предложении разделяются одним пробелом, других пробелов в предложении нет, предложение может состоять из одного слова, общая длина предложения не более 128 символов.
    программа должна:
    1. принять исходное предложение с клавиатуры
    2.составить и сообщить предложение, образованное с заменой каждого слова введенного предложения на перевернутое.

    Помогите написать данную программу, очень надо.
    И вообще реально ли ее написать по средствам опеаторов:
    LEN и MID?
    Ответить с цитированием  
     

  2. #2  
    Супер модератор Аватар для Kakos_nonos
    Регистрация
    07.01.2011
    Адрес
    Кубань
    Сообщений
    1,537
    Сказал(а) спасибо
    127
    Поблагодарили 433 раз(а) в 294 сообщениях
    Записей в блоге
    6
    На паскале бы 100% получилось. На бейсике - не знаю, но попробую.
    Ответить с цитированием  
     

  3. Пользователь сказал cпасибо:

    barinov95 (07.10.2011)

  4. #3  
    Новичок
    Регистрация
    07.10.2011
    Сообщений
    11
    Сказал(а) спасибо
    2
    Поблагодарили 0 раз(а) в 0 сообщениях
    Спасибо за помощ
    Ответить с цитированием  
     

  5. #4  
    Профи Аватар для Dimon012
    Регистрация
    09.02.2011
    Адрес
    Владивосток
    Сообщений
    850
    Сказал(а) спасибо
    29
    Поблагодарили 130 раз(а) в 108 сообщениях
    Записей в блоге
    3
    Вот програмка которая переворачивает не только слова но и в целом предложение, это не совсем то, но для примера.
    Код :
    S1$ = "qwerty asdfgh"
    N = LEN(S1$)
    FOR I = N TO 1 STEP -1
        S2$ = S2$ + MID$(S1$, I, 1)
    NEXT
    PRINT S1$
    PRINT S2$
    Пока не сообразил как осуществлять ввод текста, поэтому просто записал строку.
    Последний раз редактировалось Dimon012; 08.10.2011 в 05:04.
    Ответить с цитированием  
     

  6. #5  
    Профи Аватар для Dimon012
    Регистрация
    09.02.2011
    Адрес
    Владивосток
    Сообщений
    850
    Сказал(а) спасибо
    29
    Поблагодарили 130 раз(а) в 108 сообщениях
    Записей в блоге
    3
    Вот программка, которая делает все как надо, но с вводом текста я так и не определился, поэтому в первой строке программы присваиваю S1$ некое значение, которое передставляет собой исходную строку.
    Код :
    S1$ = "А роза упала на лапу Азора"
    S2$ = ""
    N = LEN(S1$)
    J0 = 1
    FOR I = 1 TO N
        IF MID$(S1$, I, 1) = " " OR I = N THEN
            FOR J1 = I TO J0 STEP -1
                IF MID$(S1$, J1, 1) <> " " THEN S2$ = S2$ + MID$(S1$, J1, 1)
            NEXT
            S2$ = S2$ + " "
            J0 = I
        END IF
    NEXT
    PRINT S1$
    PRINT S2$
    В преобразовании строки я использовал только названные Вами операторы LEN и MID$, но не думаю, что без опыта написания программ на бейсике, Вы сможите разобраться, но если что спрашивайте.
    Последний раз редактировалось Dimon012; 08.10.2011 в 06:07.
    Ответить с цитированием  
     

  7. #6  
    Супер модератор Аватар для Kakos_nonos
    Регистрация
    07.01.2011
    Адрес
    Кубань
    Сообщений
    1,537
    Сказал(а) спасибо
    127
    Поблагодарили 433 раз(а) в 294 сообщениях
    Записей в блоге
    6
    У меня более простой алгоритм. Как доберусь до компьютера с бейсиком - выложу.
    Ответить с цитированием  
     

  8. Пользователь сказал cпасибо:

    barinov95 (09.10.2011)

  9. #7  
    Супер модератор Аватар для Kakos_nonos
    Регистрация
    07.01.2011
    Адрес
    Кубань
    Сообщений
    1,537
    Сказал(а) спасибо
    127
    Поблагодарили 433 раз(а) в 294 сообщениях
    Записей в блоге
    6
    Вот моя программа:
    Код qbasic:
    INPUT a$
    b$ = ""
    a$ = a$ + " "
    FOR i = 1 TO LEN(a$)
    IF MID$(a$, i, 1) = " " THEN
    PRINT b$
    b$ = ""
    ELSE
    b$ = MID$(a$, i, 1) + b$
    END IF
    NEXT i
    Она использует более простой алгоритм и занимает меньше места.
    Работает она так: вначале строка вводится с клавиатуры, и к ней добавляется пробел. Потом есть цикл, который идёт по всей строке и если встретит НЕ пробел, тогда приписывает этот символ к началу временной строки b$, а если же встретит пробел, то выводит эту строку.
    Ответить с цитированием  
     

  10. #8  
    Новичок
    Регистрация
    07.10.2011
    Сообщений
    11
    Сказал(а) спасибо
    2
    Поблагодарили 0 раз(а) в 0 сообщениях
    Спасибо огромное за помощ, есть опыт написания программ, нету опыта этих двух операторов, а могли бы обьяснить смысл оператора LEN?
    Ответить с цитированием  
     

  11. #9  
    Супер модератор Аватар для >Quiet Snow<
    Регистрация
    11.04.2011
    Адрес
    Планета земля
    Сообщений
    3,935
    Сказал(а) спасибо
    1,845
    Поблагодарили 986 раз(а) в 844 сообщениях
    Записей в блоге
    1
    LEN возвращает длину строки.
    Обучение прикладному программированию(по skype), качественно, недорого, 18+, вопросы в личку.
    «Если вы ничего не сделаете, я уверяю вас, ничего и не произойдёт» © Жак Фреско
    Ограниченно модерирую.
    Ответить с цитированием  
     

  12. #10  
    Профи Аватар для Dimon012
    Регистрация
    09.02.2011
    Адрес
    Владивосток
    Сообщений
    850
    Сказал(а) спасибо
    29
    Поблагодарили 130 раз(а) в 108 сообщениях
    Записей в блоге
    3
    Да здорово посмотреть чужой взгляд на программирование! Ваша Kakos_nonos программа очевидно быстрее моей, потому, что у меня двойной цикл. И оригинальная идея сборка строки непосредственно на экране.
    Ответить с цитированием  
     

Страница 1 из 2 12 ПоследняяПоследняя
Информация о теме
Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Игра в слова
    от Vladislav в разделе Форумные игры
    Ответов: 94
    Последнее сообщение: 20.06.2013, 10:04
  2. Значение слова дос =)))
    от Абадябер в разделе Юмор
    Ответов: 5
    Последнее сообщение: 14.12.2011, 10:45
  3. Ответов: 10
    Последнее сообщение: 02.12.2011, 19:05
  4. Ответов: 1
    Последнее сообщение: 03.06.2011, 04:15
  5. Ответов: 3
    Последнее сообщение: 22.04.2011, 00:15
Ваши права
  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •