Отсортировать слова по алфавиту по первой букве

Kirgach

Господа программисты помогите пожалуйста решить задачку в qbasic : ))Условие : ввести 3 любых слова на русском языке программа их отсортировывает по алфавиту по первой букве . Заранее всем большое спасибо !!!
9 ответов

Kirgach

ввести 3 любых слова на русском языке программа их отсортировывает по алфавиту по первой букве .
QBasic по умолчанию не поддерживает ввод символов на русском языке(в нём нет встроенной таблицы знакогенератора), на большинстве ПК нет программы, русифицирующей интерфейс, поэтому многие на этом форуме(и не только) пишут программы, выдающие запросы на английском чарсете. Спросите у того, кто дал вам это задание: нужно ли писать программу для русских ASCII кодов и будет ли на тестовой машине русификатор. А написать её недолго.


Kirgach

QBasic по умолчанию не поддерживает ввод символов на русском языке(в нём нет встроенной таблицы знакогенератора), на большинстве ПК нет программы, русифицирующей интерфейс, поэтому многие на этом форуме(и не только) пишут программы, выдающие запросы на английском чарсете. Спросите у того, кто дал вам это задание: нужно ли писать программу для русских ASCII кодов и будет ли на тестовой машине русификатор. А написать её недолго.
глупость какая. всё прекрасно поддерживается. правый ctrl+shift никто не отменял, а в help для qbasic приведена расширенная таблица ASCII, в которой есть все русские буквы


Kirgach

всё прекрасно поддерживается.
Ага и каждый второй, которому пишут программу на русифицированной 866 кодировке, жалуется мол что-за каракули. Будь оно так, здесь бы не юзали транслит.
глупость какая.
Поставь MS-DOS и не ставь никаких резидентов больше. Установи голый QBasic, проверь, а потом говори, что поддерживается, а что нет(скрины прилагаются, первый - MS-DOS, второй - WINXP). На большинстве машин в новых виндах так или иначе с этим проблема, таблица знакогенератора часто сбивается при переходе в разные графические режимы и обратно, после чего не восстанавливается. Устраняется элементарно - резидентником, поддерживающим графические режимы.


Kirgach

Собственно чё я припираюсь прогу накатать 2 секунды, хочет пусть юзает, но вышесказанное в силе.
DEF FNCRus% (X$)
n% = ASC(LEFT$(X$, 1))
  IF n% > 159 AND n% < 176 THEN
   n% = n% - 32
  ELSEIF n% > 223 AND n% < 240 THEN
   n% = n% - 96
  END IF
FNCRus% = n%
END DEF
  CLS
LINE INPUT "‘«®ў®1:"; A$
LINE INPUT "‘«®ў®2:"; B$
LINE INPUT "‘«®ў®3:"; C$
 IF FNCRus%(A$) > FNCRus%(B$) THEN SWAP A$, B$
 IF FNCRus%(B$) > FNCRus%(C$) THEN SWAP B$, C$
 IF FNCRus%(A$) > FNCRus%(B$) THEN SWAP A$, B$
PRINT A$
PRINT B$
PRINT C$
Даже форум не съел)))


Kirgach

>Quiet Snow<, ни разу с такой фигнёй не сталкивался, но в Паскале она решается просто: в гугле нашёл что дописать в autoexec и config. Всегда есть keyrus, в общем, всё от рук зависит.


Kirgach

Всегда есть keyrus
Есть не спорю(более того сам юзаю), но не все кому нужно "сдать готовенькое" об этом знают. Потом объяснять человеку почему рабочая программа "не работает" и так каждый раз, когда речь заходит о печати русскими символами. Вообще я подумаю над этим вопросом и в частности как зашить все русские чарсеты знакогенератора в программу на QBasic вместе с кодом их активации. Это должно быть не очень трудоёмко(в INLINE конечно, но фигли делать), да код возрастёт но зато никаких вопросов не будет. Этому разделу много документации не хватает.


Kirgach

Уважаемые программисты! Не могли бы вы помочь мне решить эту задачку по QBasic-у, с программой у меня напряг: Составьте программу перестановки элементов одномерного массива, при которой первый элемент становится последним, второй- предпоследним и т. д. Буду безмерно благодарен тому кто поможет. Заранее Спасибо!


Kirgach

for i=1 to n\2
swap a(i),a(n-i+1)
next


Kirgach

Спасибо! кот Бегемот!У меня появилась еще проблемка. Задача такова: Составьте программу подсчета числа повторяющихся отрицательных элементов массива A(Q). Я написал программу:
DIM a(q)
PRINT "vvedite minusovoe chislo"
FOR i = 1 TO q
IF q = a(-q) THEN ....
NEXT Q
.....
END
(там где многоточие не знаю что написать)Знаю что написал бредятину (не работает, да и вообще давно уже не писали на языке basic, а тут вдруг но информатике вернулись...) Словом помогите со всей программой, подправьте, напишите пожалуйста.