|
19 / 187 / 0
Регистрация: 17.06.2013
Сообщений: 2,163
|
|
Подскажите про оператор IF THEN END IF23.11.2021, 19:51. Показов 13251. Ответов 161
Метки нет (Все метки)
Тема: Подскажите про оператор IF THEN END IF
Ограничено ли число команд выполняемых при соблюдении его условия или же это может быть любое число комманд? Потому что в Паскале если пишут подобным образом: if then то это означает что в случае выполнения условия оператора может выполняться только одна инструкция следующаяя сразу за словом then. А следующая команда уже не будет относится к оператору. А если нужно чтобы количество комманд внутри условного оператора было любым нужно писать как: if then begin end;. Я заинтересован в использовании только универсального варианта условного оператора Бейсика у которого число комманд внутри оператора может быть любым. Если же оператор IF THEN END IF как то переделывается в более уневерсальный вариант то не могли бы вы подсказать как это делать?
0
|
|
| 23.11.2021, 19:51 | |
|
Ответы с готовыми решениями:
161
Оператор Try . Except . Finally . End; при работе с ресурсами
|
|
|
|||||||||||||
| 23.11.2021, 20:25 | |||||||||||||
Сообщение было отмечено wer1 как решение
РешениеIf A > 10 Then A = A + 1 : B = B + A : C = C + B
2
|
|||||||||||||
| 23.11.2021, 20:26 | |
|
Уважаемый Ixmil
это как вы выразились универсальный оператор и выглядит так IF (УСЛОВИЕ) THEN оператор 1 оператор 2 .... оператор N END IF Число операторов может исчисляться сотнями и тысячами. Всё зависит от сложности самих операторов и размера программы.
1
|
|
|
COM‐пропагандист
|
||||||||||||
| 23.11.2021, 20:51 | ||||||||||||
|
Ничего сложного. Есть однострочный и многострочный If.
Однострочный вариант:
(Я не знаю почему тег кода BASIC превращается в PureBasic, наверное какая‐то ошибка движка форума) Добавлено через 18 минут Я рекомендую всегда использовать многострочный вариант, даже если он состоит из одного оператора, и использовать отступы. Не пишите несколько выражений на одной строке, это создаёт сложно читаемый код. Не используйте ElseIf, вместо него используйте Select Case. (То что вы называете «оператором» на самом деле называется выражением, statements. Оператор же — это математическая функция в виде символа вроде * умножения, / деления, - разности, + сложения, Mod взятие остатка от деления и так далее.)
1
|
||||||||||||
|
|
|
| 23.11.2021, 22:28 | |
|
0
|
|
|
19 / 187 / 0
Регистрация: 17.06.2013
Сообщений: 2,163
|
|
| 24.11.2021, 14:13 [ТС] | |
|
Большое спасибо за вашу помощь.
Добавлено через 4 часа 10 минут Я недавно начал пытаться изучать этот язык и поэтому тут же начал искать варианты его сокращения и упрощения - это должно было вносить ясность. Сам на предыдущем языке ещё помню сколько времени потратил на одно его упрощение. Упрощение вносит ясность. Добавлено через 6 минут На Паскале (Delphi) case of - работает медленнее чем if then begin end; и я там всегда использую if then... Если нужно чтоб работало ещё быстрее - надо подпрограмму с операторами поместить в модуль и запускать от него. А далее пришёл к выводу что лучше когда проще приёмы синтаксиса и меньше их в количестве.
0
|
|
|
COM‐пропагандист
|
||
| 24.11.2021, 18:08 | ||
|
Расскажите, где и как вы применяете QBASIC?
Я вот даже не представляю где в настоящее время можно использовать QBASIC. Во‐первых, откуда‐то нужно достать древний компьютер с устанавленной MS DOS, потому что на современных материнских платах UEFI и MS DOS не ставится. Во‐вторых, невозможно полноценно работать на машине, нет сети, GUI, не работает оборудование.
0
|
||
|
Наивное Существо
|
||
| 24.11.2021, 23:42 | ||
|
Ixmil,
И вместо бейсика можно применять VB6 - он более современен и наследуте бейсик.
0
|
||
|
|
||
| 25.11.2021, 08:59 | ||
![]() А PureBasic хоть и не наследует, но проще в освоении, если писать Оконные приложения или работать с 2D и 3D графикой. А ещё есть VB .NET и его детский вариант SmallBasic, который умеет делать современные приложения. Basic4Android, в котором легко делать приложения для смартфона и т.п., список огромный можно написать ![]() Семейство Basic велико и многогранно, в зависимости от задачи всегда можно выбрать нужный.
0
|
||
| 25.11.2021, 16:47 | |
|
0
|
|
|
COM‐пропагандист
|
|
| 25.11.2021, 17:21 | |
|
0
|
|
|
19 / 187 / 0
Регистрация: 17.06.2013
Сообщений: 2,163
|
||
| 25.11.2021, 20:58 [ТС] | ||
У меня Quick Basic 4 работает без Dos box эмулятора в оконном режиме. Надо сначало убрать из его папки или удалить dos ярлык на него ссылающийся чтобы можно было запускать редактор. Это файл ярлыка с расширением *pif по моему. Далее надо отыскать программу которая выполняет саму компиляцию которая отдельно и создать для неё текстовой файл с расширением *bat в котором текстом надо написать имя файла компилирующей программы (это BC.EXE) а далее через пробел указать имя файла *bas текстовой программы. И запустить bat файл в результате чего сначало должен получиться obj файл кторый точно таким же методом приобразуется в exe файл программой LINK.EXE. Если этот компилятор как-то неправильно себя ведёт я стараюсь перетащить его папку строго на диск C:\ Я давно ещё хотел изучить этот язык так как Бейсик был довольно классическим языком и при любом ещё покалении старых ЭВМ и только в последнее время по этому языку стали попадаться вразумительные инструкции. Язык старый, без перспективный - это да. Но после трудностей с компилятором Delphi я от программирования чудес уже не жду. Добавлено через 1 минуту Я жду возможностей и реалий от программирования от того на что способен был бы сам. А это достаточно скромно. Добавлено через 6 минут Например подобный QBasic 4 компилятор Turbo Pascal 7 (DOS) через установленный PSP эмулятор DosBox компилировал на PSP. Возможно это сможет работать и на чём нибудь ещё.
0
|
||
|
Наивное Существо
|
|
| 26.11.2021, 20:53 | |
|
Ixmil, программирование - это чудесно. Чудеса можно и на qbasic творить. Но всё таки прислушайтесь к мнениюPro_grammer - ещё больше чудес будет
Сделайте любую игру и удивитесь, как это прекрасно....
0
|
|
|
Кормпилятор
|
|||
| 26.11.2021, 23:56 | |||
Сообщение было отмечено wer1 как решение
Решениесвободного времени, вложенных сил, опыта и незасранности головы кучей лишней информации. Уже приводил пример того, что можно писать на QB, TP, PB, FB. Виртом сугубо ради конкуренции, который в отличии от первого был всё таки программистом, но не успел понять как его облапошили. На деле нет никакой бесперспективности. Есть стада исторически некомпетентных людей, на поверку несущих это чужое и ничем не подкреплённое мнение сквозь десятилетия. По иронии судьбы Паскаль стал в равной степени бесперспективным, когда на повестку дня вышел сначала c, потом --, а потом и плюсы. И если бы не демщики и всякие лётные\физические институты с рядом проф прогеров на дельфи - лёг бы камнем туда же, в марианскую. И уже десятки раз на примере багов и детсадовских ошибок показывал беспомощность современных программистов в прикладном софтоделе. На их фоне ребята из середины 90-х - реальные минотавры, которые легко аннигилируют этих придурков в любом ответственном мероприятии, будь то демосцена или разработка ПО. Имена неоднократно перечислял: Ken Silverman, Bisquit, Antony Gual, locm(Высочанский Пётр), Stabud(Станислав Будинов), The Trick (Анатолий). К тому же есть ряд людей на форумах(вкл CF), прекрасно программирующих на Basic диалектах, которым плевать на вымышленную "бесперспективность", например Vodav, WQ, CatStail, Замабувараев. Рекомендую почитать историю IT поглубже и взглянуть трезвым взглядом на то говно, которое в те времена происходило, ибо на фоне технического прогресса люди перестали замечать важные событийные обстоятельства.
2
|
|||
|
|
||
| 27.11.2021, 12:56 | ||
|
Наверно речь о том что QBasic для DOS и с API современных ОС не взаимодействует, а на x64 вовсе не запускается. Его практическое применение сомнительно.
0
|
||
|
COM‐пропагандист
|
|
| 27.11.2021, 13:34 | |
|
Сейчас поясню, почему Я выбрал FreeBASIC.
1. Унаследовал синтаксис от QuickBasic, хотя я не программирую в стиле принятом в бейсике. 2. Нативно и без интерпретатора работает на x86 и x86_64 архитектурах. 3. Я могу полностью управлять компиляцией и бинарным кодом, на выходе иметь екзешники размером в два‐три килобайта. 4. Я конечно не пишу драйвер или операционную систему, но мысль что их можно делать на FreeBASIC — подогревает мои купленные у врагов души. 5. Можно копошиться в байтах. 6. Совместим с си, FreeBASIC и си имеют почти всюду пересекающиеся множества, мне не нужно переходить на си чтобы использовать какой‐нибудь код из MSDN или StackOverFlow. 7. Скомпилированные екзешники работают быстро, не нужно переписывать их на си для ускорения работы. 8. Я люблю Verbose синтаксис, например, And, Or, Not, Mod. В то время как в си принято вместо читаемых слов использовать ASCII‐арт и псевдографику: закорючки || && ^^, двойные двоеточия, бессмысленные точки с запятой в конце каждой строки. 9. Контекстно‐свободная грамматика, в отличие от контекстно‐зависимой грамматики в си. 10. Не могу не упомянуть такой пункт как «троллинг сишников», это важно. Меня забавляет что программирование на бейсике очень беспокоит поклонников си, привыкших в бейсике видеть 10 PRINT "HELLO WORLD" : 20 GOTO 10, но никак не программы вроде высокопроизводительного вебсервера.
0
|
|
|
COM‐пропагандист
|
|
| 27.11.2021, 14:54 | |
|
Ну… Я могу себе позволить делать маленькие и быстрые программы.
В 21 веке программисты не то что не могут так делать, но вообще не могут делать что‐то без задачи и указания заказчика.
1
|
|
|
19 / 187 / 0
Регистрация: 17.06.2013
Сообщений: 2,163
|
||
| 27.11.2021, 15:18 [ТС] | ||
На всех этих системах подобное было работоспособным а то что сейчас как железно для того что выше виндовс 7 я не беру и не думаю об этом. К чему эти реактивные самолётные цены?. Там если будет старый ярлык то он не даст нормально запустить компилятор потому что при запуске exe сначало всё равно будет считываться ярлык и тогда будет появляться сообщение об ошибке. Добавлено через 5 минут Если есть Visual Basic как более современная программа то изучая qBasic - я хоть как то учусь и Visual Basic в то время как qBasic должен был быть проще и уже законченным как достижение. Добавлено через 5 минут А далее был такой инцидент когда я написал программу на Турбо Паскале 7 для приобразования файлов любого типа и вобщем-то и размера и это не получилось. Когда размер файла достигал какой-то отметки то на моей программе значилась ошибка и далее файл не обрабатывался и в сумме размер обрабатываемых данных останавливался на сотнях килобайт по моему. Тогда когда в режиме копирования программа на Турбо Паскале может копировать и 600 мегобайт. А тогда когда есть разница в размерах входящего и выходящего обработанного файла то похоже что Турбо Паскаль не справляется. Добавлено через 1 минуту Dos паскалевские программы от TMT-Pascal 3 могут в отличае от Delphi программ работать часами без перебоев и зависаний.
0
|
||
| 27.11.2021, 15:18 | |
|
Помогаю со студенческими работами здесь
20
Про оператор IF Не могу поставить end. после else – пишет "ожидался оператор" Подскажите случаи, когда количество begin и end в программе не совпадают Простая задачка про тернарный оператор Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|