QBasic: как запустить программу из другой программы?

Я создал две разные программы в QBasic, и обе они сохранены в разных файлах .bas, то есть одна — 1.bas , а другая — 2.bas .

Как открыть программу 1.bas , пока я нахожусь в программе 2.bas , не закрывая ее?

Программа 1 должна какое-то время выполняться внутри программы 2, а когда она закончится, я снова должен оказаться в программе 2. Есть ли способ сделать это?

Я хотел бы знать, есть ли для этого синтаксис, который работает в QBasic и/или QB64.


В Qbasic вы можете использовать команду CHAIN ​​ для передачи управления в другой файл .BAS, и по завершении он вернется к первому файлу .BAS. Вы можете комбинировать его с COMMON , чтобы также совместно использовать переменные между двумя программами.

Вы также можете использовать RUN , но в QBasic вы не можете передавать переменные (не уверен, но я думаю, что управление не вернется). А в QB64 можно передавать переменные с помощью RUN

См. Стандартные COM1_EX.BAS и COM2_EX.BAS как пример, содержимое COM1_EX.BAS:

  '== COM1_EX.BAS - пример программирования ОБЩЕГО оператора == DIM Values ​​(от 1 до 50) COMMON Values ​​(), NumValuesPRINT "Enter  значения по одному в строке. Введите 'END' для выхода. "NumValues ​​= 0DO INPUT" -> ", N $ IF I> = 50 OR UCASE $ (N $) =" END "ЗАТЕМ ВЫХОД DO NumValues ​​= NumValues ​​+ 1 Values ​​(  NumValues) = VAL (N $) LOOPPRINT "Выход из COM1_EX.BAS в цепочку к COM2_EX.BAS" PRINT "Нажмите любую клавишу для цепочки ..." DO WHILE INKEY $ = "" LOOPCHAIN ​​"com2_ex"  

содержимое COM2_EX.BAS:

  '== COM2_EX.BAS - пример программирования общего оператора ==' Обратите внимание, что переменные Values ​​() и NumValues ​​из  COM1_EX 'будет вызываться X () и N здесь, в COM2_EXDIM X (от 1 до 50) COMMON X (), NPRINTPRINT "Теперь выполняется файл com2_ex.bas, полученный с помощью команды CHAIN" ЕСЛИ N> 0 ТОГДА Sum = 0 ДЛЯ I =  1 ДО N Сумма = Сумма + X (I) СЛЕДУЮЩИЙ I ПРИН  T «Среднее значение»;  Сумма/NEND ЕСЛИ  

Оцените статью
techsly.ru
Добавить комментарий