- •Программирование на qbasic.
- •Алгоритм
- •Введение в язык программирования Qbasic
- •Среда программирования qBasic.
- •Алфавит языка
- •Выражения и операции
- •Оператор присваивания
- •Операторы ввода-вывода
- •1. Какие из следующих последовательностей символов являются идентификаторами, а какие нет.
- •2. Записать по правилам Бейсика следующие выражения:
- •3. Переписать следующие выражения, записанные по правилам Бейсика, в традиционной математической форме:
- •Операторы перехода
- •Ветвление в алгоритмах и программах. Операторы условного перехода
- •If условие then блок операторов 1 else блок операторов 2
- •Условный оператор неполной альтернативы:
- •If условие then блок операторов
- •Циклы в алгоритмах и программах
- •Строковые переменные
- •Массивы
- •Сортировка массива по возрастанию
- •Подпрограммы
- •Работа с файлами
- •Комбинированные типы.
- •Операторы графики
Сортировка массива по возрастанию
-
1 СПОСОБ (метод пузырька)
DIM A(9)
CLS
FOR i = 0 TO 9
INPUT A (i)
NEXT i
FOR i = 0 TO 9
FOR y = 9 TO i STEP – 1
IF A (y) >A(y-1) THEN GOTO 20
m = A (y)
A (y) = A (y-1) : A (y-1) = m
20: NEXT y
NEXT i
FOR i=0 TO 9
PRINT А(i)
NEXT i
2 СПОСОБ (метод сортировки простым способом).
DIM A(9)
PRINT “Введите 10 элементов”
FOR i=0 TO 9
INPUT A(i)
NEXT i
FOR i=0 TO 9
P=A(i) : K=i
FOR y=i+1 TO 9
IF A(y)>P THEN GOTO 50
P=A(y):K=y
50: NEXT y
A(K)=A(i):A(i)=P
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
40: IF 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
Задачи на использование цикла при обработке массивов.
Вывести положительные элементы массива Х(k), затем отрицательные элементы массива У(m) и количество выведенных чисел.
Даны k и массив X(k). Найти сумму.
(X1-P)2+(X2-P)2+...+(Xk-P)2, где Р=Х1+Х2+...+Хk)/k.
Даны m и массив Х ( m ). Найти произведение.
(2+Х21)*(2+Х22)*...*(2+Х2m).
4. Найти номер элемента массива Х(k), ближайшего к С, где
С=(Х1+Х2+...+Хk)/k
Даны С, m и массив Т(m). Найти число элементов массива Т, меньших С, а для элементов, больших С, найти их среднее арифметическое.
Для массива Т(m) найти число элементов, больших предыдущего элемента, а для тех, которые меньше, найти их среднее арифметическое.
Найти номер наименьшего положительного элемента массива Х(m).
Для массива Х(m) напечатать сумму, произведение и номера положительных элементов после последнего нулевого элемента.
Даны k и массив Т(k). Найти сумму и количество элементов в массиве Т после первого нулевого элемента.
Даны m и массив А (m). Напечатать сумму отрицательных элементов массива А после первого нулевого элемента.
Даны m, координаты ХА,УА пункта А и в массиве К из 2m чисел координаты Х1, У1, Х2,У2,...,Хm,Ym пунктов В1, В2,...,Вm. Вывести номер и координаты пункта В наиболее удаленного от пункта А.
Найти общее количество нулевых элементов в массивах Х(m), У(k).
Образовать и вывести массив Т из неотрицательных элементов массива Х(m). Напечатать число элементов в массиве Т.
Вывести четные по значению среди положительных элементов массива Х(m), начиная с первого положительного элемента.
Удвоить наибольший элемент массива Х(m) и напечатать измененный массив.
Вывести ненулевые элементы массива Х(m) и их произведение.
Найти сумму и количество нечетных по значению элементов массива Х(m).
Образовать массив Т из ненулевых элементов массива Х(m). Затем вывести массив Т и количество элементов в нем.
В массиве Т(m) заменить нулевые элементы наибольшим элементом.
В массиве Х(m) найти сумму и количество элементов между первым и последним нулевым элементами.
Поменять местами наибольший и наименьший элементы массива Т(m).
В массиве Х(m) найти общее число элементов до первого и после последнего нулевых элементов.
Сколько элементов в массиве Х(m) после второго нулевого элемента.
Из элементов массивов Х(m) и У(m) образовать массив
Н(Х1,У1,Х2,У2,..., Х(m), У(m) из 2m элементов.
Округлить элементы массива Х(m) до ближайшего целого.
Из элементов массивов Х(m), У(k) образовать массив
Н((Х1,Х2,Х3,..., Хm, У1,У2,У3,...,Уk) из m+k элементов.
Найти номер второго нулевого элемента массива Х(m).
Найти номер предпоследнего нулевого элемента массива Х(m).
Переставить элементы массива Х(m) в обратном порядке, т.е. Хm,...,X2,Х1.
В массиве Х(m) найти число элементов между первым и вторым нулевыми элементами.
Сколько в массиве Т(m) элементов, меньших суммы всех элементов?
В массиве Т(m) нулевые элементы заменить суммой всех элементов.
Образуют ли арифметическую или геометрическую прогрессию элементы массива Х(m)?
В массиве Т(m) заменить элементы с четными номерами суммой элементов с нечетными номерами.
Найти расстояние Р между массивами А(k) и В(k) по формуле:
Р2-(А1-В1)2 +(А2-В2)2+...+(Ак-Вк)2.
В массив Р записать сначала отрицательные элементы массива Х(k). затем положительные.
В массиве Х(k) найти сумму элементов и их количество до первой перемены знака.
Из элементов массива Х(k), попадающих в отрезок [A,B], составить массив М и вывести его.
На плоскости ХОУ даны k точек массивами координат Х(k), Y(k). Образовать массив номеров точек вне I четверти.
Образовать массив Н номеров нулевых элементов массива Х(k).
В одномерном массиве с четным количеством элементов (2*N) находятся координаты N точек плоскости. Они располагаются в следующем порядке: х1,у1,х2,у2,х3,у3 и т.д. Определить минимальный радиус окружности с центром в начале координат, которая содержит все точки, и номера наиболее удаленных друг от друга точек.
В двумерном массиве N x M содержатся М ординат N графиков функций в точках 1,2,3 ,..., М. Определить, пересекаются ли эти графики в одной точке, и если да, то найти ее номер. Считать, что графики могут пересечься только в указанных точках.
В одномерном массиве содержится график движения электропроезда от Перми до Кунгура в виде:
первый элемент- время движения до первой остановки;
второй элемент- время стоянки на первой остановке;
третий элемент- время движения до второй остановки;
четвертый элемент- время стоянки на второй остановке;
и так далее ....
последний элемент- время движения от предпоследней остановки до Кунгура.
В одномерном массиве хранятся результаты социологического опроса. Написать программу для подсчета количества результатов, отклоняющихся от среднего не более чем на 7%.
От острова Буяна до царства славного Салтана месяц пути. Капитан корабля записывает в вахтенный журнал количества миль, пройденных за день. Написать программу, определяющую, в какую десятидневку пройден большой путь.
В массиве хранятся данные о температуре окружающего воздуха за месяц. Определить самую холодную декаду месяц.
Рост студентов двух групп, в которых соответственно 23 и 25 человек, размещен в двух массивах. Требуется определить средний рост студентов каждой группы, а также количество студентов в двух группах вместе, имеющих рост выше 180 см.
20 покупателей магазина оценивают качество товара оценками 3,4,5. Определить сколько процентов составляют покупатели, поставившие 5,4 и 3 в отдельности от общего числа покупателей, участвовавших в экспертизе товара.
В соревновании принимали участие команды трех классов по 6 человек в каждой. Результаты каждой команды занесены в определенный массив в виде баллов, которыми судьи оценивали каждого участника. Определить команду- победителя.
Необходимо протестировать 15 абитуриентов для распределения их по группам для изучения иностранного языка: английский язык, французский язык, немецкий язык, начальное знакомство с иностранным языком. Составьте программу, подсчитывающую количество абитуриентов в каждой группе в зависимости от того, как ответил абитуриент на вопрос об изучении иностранного языка в школе.
В течение января месяца в доме не работала котельная, поэтому температура в квартирах была непостоянной. Определить количество дней, в течение которых жильцам посчастливилось иметь температуру не ниже 15 градусов, а также вычислить среднюю температуру воздуха в квартирах за этот месяц. Для решения задачи использовать массив.
18 учащихся сдавали норму по метанию гранаты. Составьте программу, определяющую какой процент учащихся выполнил норму. Если известно, что норма 38 метров.
В каждый солнечный день улитка, сидящая на дереве, поднимается вверх на 2 см, а в каждый пасмурный день опускается вниз на 1 см. В начале наблюдений улитка находилась в 30 см. от земли. Дан массив из 30 элементов, содержащий сведения о том был ли день солнечным или пасмурным. Составьте программу определения места нахождения улитки к концу 30 дня.
В день вашего рождения тетя положила на ваше имя в сбербанк вклад в размере 1000 рублей. Каждый год к вкладу добавляется S% годовых. Составьте программу для вычисления:
а) через сколько лет вклад достигнет R рублей?
б) какой размер вклада будет через 15 лет после вложения?
