Форум программистов, компьютерный форум CyberForum.ru
CyberForum.ru - форум программистов и сисадминов > > >
Восстановить пароль Регистрация
 
Элизабет
Новичок
0 / 0 / 0
Регистрация: 06.05.2011
Сообщений: 7
07.05.2011, 00:03     Алфавитный порядок   #1
Приветик друзья.
Нужна ваша помощь.
Столкнулась с задачкой впринципи не очень сложно, но имею трудности в написании её на QBasic((
Никогда не изучала этот язык, поэтому даж не имею представления как на нём работать....
Нуждаюсь в вас.

вот условие:

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

вот код на Паскале:
Код Pascal
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
uses crt;
const bk=['A'..'Z','a'..'z'];
function Alf(s:string;var k:byte):boolean;
var s1:string;
    f:boolean;
    i:byte;
begin
s1:=s;{сделаем копию строки}
for i:=length(s1) downto 1 do
if not(s1[i] in bk) then delete(s1,i,1);{удалим не буквы}
k:=length(s1);
if k>0 then{если есть буквы}
 begin
  for i:=1 to length(s1) do
  s1[i]:=UpCase(s1[i]);{приведем к верхнему регистру}
  f:=true;
  i:=2;
  while(i<=length(s1))and f do
  if s1[i]<s1[i-1] then f:=false{если не по алфавиту}
  else i:=i+1;
  Alf:=f;
 end;
end;
var s:string;
    b:boolean;
    n:byte;
begin
clrscr;
writeln('vvedite stroku soderzhasyu latinskie bukvi:');
readln(s);
b:=Alf(s,n);
if n=0 then write('v stroke net latinskih bukv')
else if b then write('bukvi po alfavitu')
     else write('bukvi ne po alfavitu');
readln
end.
надеюсь вы поможите мне
AdAgent
Объявления
07.05.2011, 00:03    Алфавитный порядок
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.05.2011, 00:03    Алфавитный порядок

Посмотрите здесь:

QBasic Изменить порядок элементов массива X на обратный и заполнить ими массив Y

QBasic Изменить порядок элементов массива Х на обратный и заполнить ими массив Y

Turbo Pascal Алфавитный порядок

C# Алфавитный порядок

C (СИ) Алфавитный порядок. Си.

QBasic Дан массив 4 на 4. Поставить последнюю строку на первое место, не меняя порядок остальных

Turbo Pascal Алфавитный порядок

MS Access Алфавитный порядок

BAT Обратный алфавитный порядок

C (СИ) Алфавитный порядок

кот Бегемот
Платежеспособный зверь
7127 / 3341 / 84
Регистрация: 28.10.2009
Сообщений: 8,381
07.05.2011, 01:11     Алфавитный порядок   #2
Не знаю, есть ли смысл городить огород с функцией, в принципе, и без неё всё легко проверяется, но если нужна именно функция - уточните. Программа вот:
Код PureBasic
1
2
3
4
5
6
7
8
9
10
11
12
13
INPUT "vvedite stroku ",a$
FOR i = 1 TO LEN(a$)
IF MID$(a$, i, 1) >= "A" AND MID$(a$, i, 1) <= "Z" OR MID$(a$, i, 1) >= "a" AND MID$(a$, i, 1) <= "z" THEN b$ = b$ + MID$(a$, i, 1)
NEXT
IF b$ = "" THEN
PRINT "bukv net"
ELSE
b$ = UCASE$(b$)
FOR i = 2 TO LEN(b$)
IF MID$(b$, i, 1) < MID$(b$, i - 1, 1) THEN f = 1
NEXT
IF f = 0 THEN PRINT "po alfavitu" ELSE PRINT " ne po alfavitu"
END IF
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать новую тему
Опции темы

Текущее время: 06:16. Часовой пояс GMT +4.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.7 PL3
Copyright ©2000 - 2014, vBulletin Solutions, Inc.