Перевести программу на Pascal в Basic - QBasic
Формулировка задачи:
Доброго времени суток.
Возникла такая проблема, девушка попросила помочь с контрольной.
Задание составить блок схему и написать программу на Basic, сам я знаю только паскаль.
На нем написал, а вот перенести из одного языка в другой не могу( помогите, пожалуйста.
Листинг программы
- Program exemp;
- var
- A,B,c,d:integer;
- i,x,y:real;
- begin
- write ('Введите x '); readln (x);
- write ('Введите шаг '); readln (i);
- write ('Введите последнюю цифру в шифре '); readln (c);
- write ('Введите предпоследнюю цифру в шифре '); readln (d);
- A:=c+5; B:=d+12;
- while x<=5 do
- begin
- if x<3 then y:=exp(3*B)+cos(A*x) else y:=(A-B)*ln(x);
- x:=x+i;
- writeln('y=', y:2:2);
- end;
- readln;
- end.
Я тут немного пошустрил в интернете, поработал чутка и вроде как перевел.
Теперь прошу помочь с проверкой синтаксиса.
Листинг программы
- REM Практическая работа 2
- DIM A,B,c,d,n AS INTEGER
- DIM i,x,y AS LONG
- PRINT "Практическая работа №2"
- PRINT "Введите начало диапазона x ", x
- PRINT "Введите конец диапазона x ", n
- PRINT "Введите шаг ",i
- PRINT "Введите последнюю цифру в шифре ", c
- PRINT "Введите предпоследнюю цифру в шифре ", d
- A=c+5
- B=d+12
- DO WHILE x<=n
- IF x<3
- THEN y:=EXP(3*B)+COS(A*x)
- ELSE y:=(A-B)*ln(x)
- END IF
- x:=x+i
- PRINT"y=", y
- LOOP
- END
вроде этот должен точно быть верным...
Хоть кто то помогите
Листинг программы
- DIM A AS INTEGER
- DIM B AS INTEGER
- DIM c AS INTEGER
- DIM d AS INTEGER
- DIM n AS INTEGER
- DIM i AS LONG
- DIM x AS LONG
- DIM y AS LONG
- CLS
- PRINT "Практическая работа №2"
- INTPUT "Введите начало диапазона x "; x
- INTPUT "Введите конец диапазона x "; n
- INTPUT "Введите шаг "; i
- INTPUT "Введите последнюю цифру в шифре "; c
- INTPUT "Введите предпоследнюю цифру в шифре "; d
- LET A=c+5
- LET B=d+12
- WHILE x<=n
- IF x<3 THEN
- y=EXP(3*B)+COS(A*x)
- ELSE
- y=(A-B)*ln(x)
- END IF
- x:=x+i
- PRINT "y="; y
- WEND
- END
Решение задачи: «Перевести программу на Pascal в Basic»
textual
Листинг программы
- DEFINT A-D, N
- CLS
- INPUT "x1 = "; x1
- INPUT "x2 = "; x2
- INPUT "SHAG = "; sh
- INPUT "C = "; c
- INPUT "D = "; d
- a = c + 5
- b = d + 12
- FOR x = x1 TO x2 STEP sh
- IF x < 3 THEN
- y = EXP(3 * b) + COS(a * x)
- ELSE
- y = (a - b) * LOG(x)
- END IF
- PRINT USING "y=####.##"; y
- NEXT x
- END
Объяснение кода листинга программы
- Переменные A-D, N объявлены с помощью команды DEFINT.
- Программа запрашивает у пользователя ввод четырех чисел: x1, x2, SHAG и C с помощью команды INPUT.
- Затем программа запрашивает ввод числа D с помощью команды INPUT, но не использует его в дальнейшем, поэтому значение переменной D не используется.
- Переменные a и b инициализируются значениями переменных C и D соответственно с помощью команды a = c + 5 и команды b = d + 12.
- Используется цикл FOR для перебора значений от x1 до x2 с шагом sh.
- Внутри цикла проверяется, является ли значение x меньше 3.
- Если значение x меньше или равно 3, то вычисляется значение переменной y как сумма экспоненты 3b и косинуса ax с помощью команды y = EXP(3 b) + COS(a x).
- Если значение x больше 3, то вычисляется значение переменной y как произведение разности a и b на логарифм x с помощью команды y = (a - b) * LOG(x).
- Вычисленное значение переменной y выводится на экран с помощью команды PRINT USING
y=####.##
; y. - Цикл NEXT x завершает цикл.
- Программа заканчивается командой END.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д