Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка по QBasic.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
535.04 Кб
Скачать

Оператор goto

Оператор GOTO прост, однако не стоит им злоупотреблять. Приведём пример программы которая пишет на экран «Привет!» и спрашивает у пользователя разрешения сделать это снова. Если пользователь ответит утвердительно («Да» или «да»), то программа снова напишет на экране «Привет!»

Snova:´Помечаем ряд

PRINT “Привет!»

INPUT “Желаешь ещё?»; O$

IF O$=”ДА» OR O$=”да“ THEN GOTO snova

В данной программе пометили ряд словом Snova: После слова нужно двоеточие. Можно помечать ряды цифрами. Одинаковых цифр быть не может.

Рассмотрим программу, которая проверяет верность пароля. Пометим ряды цифрами.

10 INPUT “Введи пароль“; PAROOL$

20 IF PAROOL$=”Abrakadabra” THEN GOTO 50

30 PRINT “Пароль неверный!“

40 GOTO 10

50 PRINT “Пароль верный!“

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

INPUT “Введи пароль“; PAROOL$

IF PAROOL$<>”Abrakadabra” THEN PRINT “Пароль неверный!

LOOP UNTIL PAROOL$=”Abrakadabra”

PRINT “Пароль верный!“

Приведём пример программы, которая позволяет выучить таблицу умножения.

Поскольку программа большая, её удобно запускать по- шагам, используя клавиши F8 и F4.

F8 выполняет один ряд программы.

F4 позволяет смотреть текст на экране.

PRINT "Эта программа позволяет выучить таблицу умножения"

INPUT "Какое число умножаем?"; ARV

home:

FOR I = 1 TO 10

back: 'Это обозначение ряда

PRINT ARV; "*"; I; "=";

INPUT ОТVЕT '...Ждём ответа

'Если ответ неверный пишем заново условие и считаем количество неверных ответов.

IF ARV * I <> VASTUS THEN

PRINT "Неверно! Попробуй ещё!"

Valesid = Valesid + 1'Считаем количество неверных ответов

GOTO back

END IF

'Сюда попадаем, если ответ верный

NEXT I

'здесь проверяется, были ли ошибки

IF Valesid <> 0 THEN

CLS

PRINT "Сделал ошибки. Начнём сначала."

'Обнуляем количество неверных ответов

Valesid = 0

GOTO home

END IF

'Сюда попадаем, если все 10 ответов были верны

PRINT "Молодец!"

10. Задания

  1. Напечатать таблицу квадратных корней натуральных чисел от 1 до 20.

  2. Записать на экране 30 раз «Мяу-мяу».

  3. Записать на экране вводимое слово заданное число раз. Воспользоватся оператором цикла и обойдясь без него, например , используя оператор GOTO.

  4. Среди задаваемых 10 чисел. Проссумировать те, которые являются положительными.

  5. Подсчитать число нулей в последовательности из 10 чисел.

  6. Изменить знаки заданных 10 чисел на противоположные.

  7. Составить программу возведения числа А в стапень N.

  8. Вычислить сумму квадратов чисел от 1 до N.

  9. Вычислить сумму квадратов чётных чисел и кубов нечётных чисел среди 100 чисел.

  10. Найти все пифагоровы числа а, в,с , такие, что а^2+b^2=c^2 для 1<=a<=20, 1<=b<=20, 1<=c<=20.

  11. Найти и напечатать все трёхзначные числа, сумма кубов цифр которых равна самому числу.