Форум программистов, компьютерный форум, киберфорум
QBasic
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
алимпай
0 / 0 / 0
Регистрация: 07.05.2013
Сообщений: 4
1

Как в исходной фразе а$ переставить буквы по алфавиту

08.05.2013, 13:32. Просмотров 721. Ответов 7
Метки нет (Все метки)

в исходной фразе а$ переставить буквы по алфавиту ( данные вводятся с клавиатуры)

помогите пожалуйста на примере фразы из трех слов) за раннЕе спасибо!

Добавлено через 16 часов 11 минут
версия qbasik
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.05.2013, 13:32
Ответы с готовыми решениями:

Как в исходной строке а$ переставить местами n-е и m-e слова
Помоги пожалуйста решить задачу, в исходной строке а$ переставить местами n-е и mе слова. Вывести...

Turbo Basic. В произвольной фразе переставить слова местами по первой букве русского алфавита в обратном порядке
Надо в произвольной фразе переставить слова местами по первой букве русского алфавита в обратном...

Удвоить все согласные буквы во фразе
Составьте программу переписывающую любую введённую фразу, удваивая все согласные буквы и вставляя...

Во введенной фразе поставить буквы в алфавитном порядке
Написать программу, в которой в вводимой фразе необходимо поставить буквы в алфавитном порядке.

7
Catstail
Модератор
25786 / 13301 / 2515
Регистрация: 12.02.2012
Сообщений: 21,812
10.05.2013, 14:26 2
В каждом слове переставить?
0
алимпай
0 / 0 / 0
Регистрация: 07.05.2013
Сообщений: 4
13.05.2013, 16:44  [ТС] 3
да в каждом слове

Добавлено через 22 часа 56 минут
Catstail, вы мне поможете?)
0
Catstail
Модератор
25786 / 13301 / 2515
Регистрация: 12.02.2012
Сообщений: 21,812
13.05.2013, 17:12 4
У меня нет qbasic-а... Попробуй вот это:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
  Dim Wd$(100)
  Cls
  '::: Ввод фразы
  input Sent$
  '::: Разбивка на слова
  Sent$=Sent$+" "
  l%=len(Sent$)
  p%=0
  tmp$=""
  for i%=1 to l%
      s$=mid$(Sent$,i%,1)
      if s$=" " then
         if tmp$ <> "" then
            p%=p%+1
            Wd$(p%)=tmp$
            tmp$=""
         End if      
      Else
         tmp$=tmp$+s$
      end if
  Next i%
  '::: Обратная сортировка букв в каждом слове
  For i%=1 to p%
       S$=Wd$(i%)
       l%=Len(S$)
       For j%=1 to l%-1
            For k%=j%+1 to l%
                 if Mid$(S$,k%,1) > Mid$(S$,j%,1) then
                    tmp$=Mid$(S$,k%,1)
                    Mid$(S$,k%,1)=Mid$(S$,j%,1)     
                    Mid$(S$,j%,1)=tmp$
                 end if
            Next k%
       Next j%
       Wd$(i%)=S$
  Next i%
  '::: Печать исковерканной фразы
  For i%=1 to p%
       print Wd$(i%);" ";
  Next i%
  Print
1
алимпай
0 / 0 / 0
Регистрация: 07.05.2013
Сообщений: 4
13.05.2013, 17:43  [ТС] 5
Catstail, спасибо большое, а в коде есть какие то проценты это что они значат?
0
Catstail
Модератор
25786 / 13301 / 2515
Регистрация: 12.02.2012
Сообщений: 21,812
13.05.2013, 17:50 6
Это значит, что соотв. переменные - integer
1
алимпай
0 / 0 / 0
Регистрация: 07.05.2013
Сообщений: 4
13.05.2013, 21:08  [ТС] 7
а вы не можете мне это же на паскале написать еще? просто данный код не совсем понимаю(

Добавлено через 31 минуту
Catstail, а вы не можете мне это же на паскале написать еще? просто я данный код не совсем понимаю(( а защищать придется эту задачу(
0
Catstail
Модератор
25786 / 13301 / 2515
Регистрация: 12.02.2012
Сообщений: 21,812
14.05.2013, 11:35 8
Я лучше прокомментирую этот код.

Добавлено через 14 часов 22 минуты
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
Dim Wd$(100)
  Cls  ' чистка экрана
  '::: Ввод фразы
  input Sent$
  '::: Разбивка на слова
  Sent$=Sent$+" " ' в конец фразы лишний пробел-разделитель
  l%=len(Sent$)  ' длина фразы
  p%=0  ' счетчик слов
  tmp$=""  ' рабочая переменная (в ней будут формироваться слова)
  for i%=1 to l%  ' цикл по всем символам фразы
      s$=mid$(Sent$,i%,1)  ' очередной символ
      if s$=" " then  ' если это пробел
         if tmp$ <> "" then  ' и в tmp что-либо накоплено 
            p%=p%+1 ' увеличим счетчик слов
            Wd$(p%)=tmp$ ' занесем очередное слово
            tmp$="" ' tmp почистим
         End if      
      Else ' иначе приклеим очередной символ к tmp
         tmp$=tmp$+s$
      end if
  Next i% ' конец цикла
  '::: Обратная сортировка букв в каждом слове
  For i%=1 to p% ' цикл по номеру слова
       S$=Wd$(i%) ' очередное слово -> в S
       l%=Len(S$) ' длина слова
       For j%=1 to l%-1 ' сортировка обменом
            For k%=j%+1 to l%
                 if Mid$(S$,k%,1) > Mid$(S$,j%,1) then
                    tmp$=Mid$(S$,k%,1)
                    Mid$(S$,k%,1)=Mid$(S$,j%,1)     
                    Mid$(S$,j%,1)=tmp$
                 end if
            Next k%
       Next j%
       Wd$(i%)=S$ ' сохраняем искорёженное слово
  Next i%
  '::: Печать исковерканной фразы
  For i%=1 to p%
       print Wd$(i%);" ";
  Next i%
  Print
1
14.05.2013, 11:35
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.05.2013, 11:35

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Как проверить, упорядочены ли по алфавиту буквы?
Пусть дан непустой текст из заглавных латинских букв, за которым следует точка. Определите,...

Как для буквы вернуть следующую за ней по алфавиту?
Помогите пожалуйста с решением: Напишите функцию move, которая получает строчную латинскую букву,...

Зашифровать текст путем сдвига каждой буквы на 2 буквы по алфавиту
Задан текст. Создать программу, которая зашифрует текст путем сдвига каждой буквы на 2 буквы по...

Удалить во всех словах буквы, расположенные по алфавиту после буквы h
Дана последовательность символов, состоящая из слов. Удалить во всех словах буквы, расположенные по...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.