Перевести программу на Pascal в Basic - QBasic

Узнай цену своей работы

Формулировка задачи:

Доброго времени суток. Возникла такая проблема, девушка попросила помочь с контрольной. Задание составить блок схему и написать программу на Basic, сам я знаю только паскаль. На нем написал, а вот перенести из одного языка в другой не могу( помогите, пожалуйста.
Листинг программы
  1. Program exemp;
  2. var
  3. A,B,c,d:integer;
  4. i,x,y:real;
  5. begin
  6. write ('Введите x '); readln (x);
  7. write ('Введите шаг '); readln (i);
  8. write ('Введите последнюю цифру в шифре '); readln (c);
  9. write ('Введите предпоследнюю цифру в шифре '); readln (d);
  10. A:=c+5; B:=d+12;
  11. while x<=5 do
  12. begin
  13. if x<3 then y:=exp(3*B)+cos(A*x) else y:=(A-B)*ln(x);
  14. x:=x+i;
  15. writeln('y=', y:2:2);
  16. end;
  17. readln;
  18. end.
Я тут немного пошустрил в интернете, поработал чутка и вроде как перевел. Теперь прошу помочь с проверкой синтаксиса.
Листинг программы
  1. REM Практическая работа 2
  2. DIM A,B,c,d,n AS INTEGER
  3. DIM i,x,y AS LONG
  4. PRINT "Практическая работа №2"
  5. PRINT
  6. PRINT "Введите начало диапазона x ", x
  7. PRINT "Введите конец диапазона x ", n
  8. PRINT "Введите шаг ",i
  9. PRINT "Введите последнюю цифру в шифре ", c
  10. PRINT "Введите предпоследнюю цифру в шифре ", d
  11. A=c+5
  12. B=d+12
  13. DO WHILE x<=n
  14. IF x<3
  15. THEN y:=EXP(3*B)+COS(A*x)
  16. ELSE y:=(A-B)*ln(x)
  17. END IF
  18. x:=x+i
  19. PRINT"y=", y
  20. LOOP
  21. END
вроде этот должен точно быть верным... Хоть кто то помогите
Листинг программы
  1. DIM A AS INTEGER
  2. DIM B AS INTEGER
  3. DIM c AS INTEGER
  4. DIM d AS INTEGER
  5. DIM n AS INTEGER
  6. DIM i AS LONG
  7. DIM x AS LONG
  8. DIM y AS LONG
  9. CLS
  10. PRINT "Практическая работа №2"
  11. PRINT
  12. INTPUT "Введите начало диапазона x "; x
  13. INTPUT "Введите конец диапазона x "; n
  14. INTPUT "Введите шаг "; i
  15. INTPUT "Введите последнюю цифру в шифре "; c
  16. INTPUT "Введите предпоследнюю цифру в шифре "; d
  17. LET A=c+5
  18. LET B=d+12
  19. WHILE x<=n
  20. IF x<3 THEN
  21. y=EXP(3*B)+COS(A*x)
  22. ELSE
  23. y=(A-B)*ln(x)
  24. END IF
  25. x:=x+i
  26. PRINT "y="; y
  27. WEND
  28. END

Решение задачи: «Перевести программу на Pascal в Basic»

textual
Листинг программы
  1. DEFINT A-D, N
  2. CLS
  3. INPUT "x1 = "; x1
  4. INPUT "x2 = "; x2
  5. INPUT "SHAG = "; sh
  6. INPUT "C = "; c
  7. INPUT "D = "; d
  8.  
  9. a = c + 5
  10. b = d + 12
  11.  
  12. FOR x = x1 TO x2 STEP sh
  13.    IF x < 3 THEN
  14.       y = EXP(3 * b) + COS(a * x)
  15.    ELSE
  16.       y = (a - b) * LOG(x)
  17.    END IF
  18.    PRINT USING "y=####.##"; y
  19. NEXT x
  20. END

Объяснение кода листинга программы

  1. Переменные A-D, N объявлены с помощью команды DEFINT.
  2. Программа запрашивает у пользователя ввод четырех чисел: x1, x2, SHAG и C с помощью команды INPUT.
  3. Затем программа запрашивает ввод числа D с помощью команды INPUT, но не использует его в дальнейшем, поэтому значение переменной D не используется.
  4. Переменные a и b инициализируются значениями переменных C и D соответственно с помощью команды a = c + 5 и команды b = d + 12.
  5. Используется цикл FOR для перебора значений от x1 до x2 с шагом sh.
  6. Внутри цикла проверяется, является ли значение x меньше 3.
  7. Если значение x меньше или равно 3, то вычисляется значение переменной y как сумма экспоненты 3b и косинуса ax с помощью команды y = EXP(3 b) + COS(a x).
  8. Если значение x больше 3, то вычисляется значение переменной y как произведение разности a и b на логарифм x с помощью команды y = (a - b) * LOG(x).
  9. Вычисленное значение переменной y выводится на экран с помощью команды PRINT USING y=####.##; y.
  10. Цикл NEXT x завершает цикл.
  11. Программа заканчивается командой END.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 3.786 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут