Общие сведения об языке программирования Qbasic
Рефераты >> Программирование и компьютеры >> Общие сведения об языке программирования Qbasic

17.Из заданной строки выделить подстроку длиной 5 знаков (либо до конца строки, если осталось меньше), которая начинается с первой встретившейся в строке буквы ² f ². Распечатать эту подстроку или сообщение о том, что ее нет.

18.В заданной строке первый символ- заглавная латинская буква. Если это ² К ², ² О ², ² D ², заменить ее соответствующей строчной буквой. Распечатать полученную строку.

19.В заданной строке подсчитать количество букв латинского алфавита.

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

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

22.Из заданной строки получить новую, удалив все группы букв ² abcd ².

23.Из заданной строки получить новую, заметив все группы букв ² abc ² на² abcd ².

24.Подсчитать, сколько слов в заданной строке оканчивается буквой ² я ², если известно, что после слова обязательно стоит пробел, либо точка.

25.Даны натуральное число n, символы s1, .sn. Преобразовать последовательность s1, .sn, , заменив в ней:

а) все восклицательные знаки точками;

б) каждую точку многоточием (т.е. тремя точками);

в) каждую из групп стоящих рядом точек одной точкой;

г) каждую из групп стоящих рядом точек многоточием (т.е. тремя точками).

26. Даны натуральное число n, символы s1, .sn. Выяснить, имеются ли в последовательности s1, .sn такие члены последовательности sj,sj+1, что sj - это запятая, а sj+1 - тире.

27. Даны натуральное число n, символы s1, .sn. Получить первое натуральное j, для которого каждый из символов sj и sj+1 совпадает с буквой а. Если такой пары символов в последовательности s1, .sn нет, то ответом должно быть число 0.

Массивы

В математике принято сходные по характеру величины обозначать одним общим именем, а различать их по индексу. Например, члены какой- либо последовательности можно обозначить следующим образом:

А1, А2 , , А n

имя индекс

Аналогично поступают в Бейсике

А(1) А(2) . А(N)

имя массива индекс в круглых скобках

Массив - это совокупность переменных обозначенных общим именем и различаемых с помощью индексов, которые записываются в круглых скобках после имени массива.

DIM Английское слово (дименшн) означает массив

Оператор DIM используется для того, чтобы указать общее количество переменных в массиве. Это необходимо для рационального распределения памяти компьютера.

Объявление массива

DIM A(7) количество переменных в массиве (элементов

в массиве)

Общее имя Исполнение оператора DIM заключается

элементов массива в том, что в памяти компьютера образуется

массив переменных.

А(0) А(1) А(2) А(3) А(4) А(5) А(6) А(7)

А

               

Ограничение: массив нельзя объявлять дважды, поэтому следует объявлять массивы в начальных строках программы и не возвращаться в эти строки с помощью оператора GOTO.

Каждый элемент массива обладает:

1) именем Х(5)

2) индексом место в памяти, отведенное

3) значением 3,2 под данный элемент массива

Ввод элементов массива может осуществляться несколькими способами:

1) DIM A (5)

A(0)=4: A(I)=-2.5: (3)=10: A(4)=0: A(5)=6: A(2)=3

Этот способ ввода удобен, когда массив небольшой

2)Ввод элементов массива с клавиатуры

DIM А(9)

FOR I=0 TO 9

INPUT A(I)

NEXT I

3) DIM B (6)

DATA 0, -2, 1, 5, 8, 5, 6. 26

FOR N=0 TO 6

READ B (N)

NEXT N

Вывод элементов массива можно осуществлять в строку и в столбик:

1) DIM A(3)

PRINT A(0), A(I), A(2), A(3)

Этот способ вывода удобен, когда массив небольшой

2) DIM A(10)

FOR I=0 TO 9

PRINT A(I)

NEXT I

Основные приемы при решении задач с применением массивов

Пример 1. Дан массив из 10 элементов. Найти сумму элементов массива

DIM A (9)

S=0

FOR N=0 TO 9

S=S+A(N)

NEXT N

PRINT ²сумма=²;S

Пример 2. Найти минимальный элемент массива и индекс этого минимального элемента

DIM L (9)

MIN=L(0): K=0

FOR I=1 TO 9

IF MIN>L(I) THEN MIN=L(I):K=I

NEXT I

PRINT ²минимум²; MIN

Пример 3. Даны 2 массива А(9), В(9). Получить массив, каждый элемент которого равен сумме соответствующих элементов данных массивов

DIM A(9), B(9), C(9)

FOR I=0 TO 9

C(I)=A(I)+B(I): PRINT C(I)

NEXT I

СОРТИРОВКА МАССИВА ПО ВОЗРАСТАНИЮ

1 СПОСОБ (метод пузырька) 2 СПОСОБ (метод сортировки DIM A(9) простым способом).

CLS DIM A(9)

FOR i = 0 TO 9 PRINT “Введите 10 элементов”

INPUT A (i) FOR i=0 TO 9

NEXT i INPUT A(i)

FOR i = 0 TO 9 NEXT i

FOR y = 9 TO i STEP - 1 FOR i=0 TO 9

IF A (y) >A(y-1) THEN GOTO 20 P=A(i) : K=i

m = A (y) FOR y=i+1 TO 9

A (y) = A (y-1) : A (y-1) = m IF A(y)>P THEN GOTO 50

20 NEXT y P=A(y):K=y

NEXT i 50 NEXT y

FOR i=0 TO 9 A(K)=A(i):A(i)=P

PRINT А(i) NEXT i

NEXT i PRINT “Отсортированные элементы”

FOR i=0 TO 9

PRINT A(i)

NEXT i

END

3 способ (метод простого включения)

DIM A (10), В(9)

PRINT “Введите 10 элементов”

FOR i=0 TO 9

INPUT B (i)

NEXT i

FOR i=1 TO 10

A(i)=B(i-1)

NEXT i

FOR i=1 TO 10

P=A(I):Y=I-1

40IF P<A(Y) AND Y>0 THEN A(Y+1)=A(Y):Y=Y-1:GOTO 40

A(Y+1)=P

NEXT i

PRINT “Отсортированные элементы”

FOR i=1 TO 10

PRINT A (i)

NEXT i

END

Задачи на использование цикла при обработке массивов.

1. Вывести положительные элементы массива Х(k), затем отрицательные элементы массива У(m) и количество выведенных чисел.

2. Даны k и массив X(k). Найти сумму.

(X1-P)2+(X2-P)2+ .+(Xk-P)2, где Р=Х1+Х2+ .+Хk)/k.


Страница: