Форум программистов, компьютерный форум, киберфорум
QBasic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.50/54: Рейтинг темы: голосов - 54, средняя оценка - 4.50
 Аватар для Ixmil
19 / 187 / 0
Регистрация: 17.06.2013
Сообщений: 2,163

Подскажите про оператор IF THEN END IF

23.11.2021, 19:51. Показов 14370. Ответов 161
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Тема: Подскажите про оператор IF THEN END IF
Ограничено ли число команд выполняемых при соблюдении его условия или же это может быть любое число комманд?

Потому что в Паскале если пишут подобным образом: if then то это означает что в случае выполнения условия оператора может выполняться только одна инструкция следующаяя сразу за словом then. А следующая команда уже не будет относится к оператору. А если нужно чтобы количество комманд внутри условного оператора было любым нужно писать как:
if then begin end;. Я заинтересован в использовании только универсального варианта условного оператора Бейсика у которого число комманд внутри оператора может быть любым. Если же оператор IF THEN END IF как то переделывается в более уневерсальный вариант то не могли бы вы подсказать как это делать?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
23.11.2021, 19:51
Ответы с готовыми решениями:

Excel 2013 32-bit URLDownloadToFile пишет "Compile error: only comment may appear after End Sub End Function or End Prop
Добрый день! перепробовал все варианты и не вызывается функция URLDownloadToFile: пишет "Compile error: only comment may appear...

Оператор Try . Except . Finally . End; при работе с ресурсами
Здравствуйте. Задача такая. Есть текстовый файл в ресурсах, который считывается и записывается в Memo. Требуется предусмотреть...

Оператор for. Для чего в коде дополнительные begin-end
Program DimanRu; Var name, surname: string; i:integer; Begin; Writeln('Введите имя...'); Readln(name); Writeln('Введите...

161
Эксперт по электронике
7140 / 3320 / 341
Регистрация: 28.10.2011
Сообщений: 13,062
Записей в блоге: 7
05.12.2021, 14:40
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Замабувараев Посмотреть сообщение
Вот так выглядит отладка FreeBASIC‐программы в GNU Debugger
Такой отладкой на мой взгляд неудобно пользоваться.
Почему ее не интегрировали в IDE?

Цитата Сообщение от Quiet Snow Посмотреть сообщение
Есть даже контесты специальные на эту тему:
Здесь специально код так запутанно написан.

Цитата Сообщение от Quiet Snow Посмотреть сообщение
На QB такую петрушку сотворить будет сложнее.
Написать можно. Двоеточия есть, а значит можно расположить несколько логических строк в одной строке и получить такой же трудночитаемый код.

Цитата Сообщение от CoderHuligan Посмотреть сообщение
И то, что оператор присваивания = и оператор сравнения == выделены в отдельные сущности тоже правильно.
Это частая причина ошибок. Легко ошибиться и написать
C
1
If (x=1)
и получится совсем не то что нужно. Лучше бы оператор = использовался для сравнения в условных операторах.
Ведь не так часто нужно присваивать в условных операторах.

Цитата Сообщение от CoderHuligan Посмотреть сообщение
В бейсике, при всем к нему уважении, эти операции одинаковы, что вызывает плохие ассоциации.
Нет присваивания в условных операторах - нет вероятности допустить ошибку написав = вместо ==.
0
 Аватар для CoderHuligan
1753 / 1019 / 257
Регистрация: 30.06.2015
Сообщений: 5,132
Записей в блоге: 56
05.12.2021, 14:44
Цитата Сообщение от locm Посмотреть сообщение
Не понимаю смысла практического использования DOS ПО под Windows.
Эх - хороший вопрос!
Во-первых, есть dos-32, возможно есть и под 64, но не слышал. Во-вторых, dos проще, как операционная система. Да надо знать некоторые моменты, но их немного, гораздо меньше, чем в win api. В-третьих, dos, вообще-то хоррошая однопользовательская система, под которую написано куча софта, и который можно запускать через эмуляторы, хотя бы. Неужели все коту под хвост надо выбросить? почему бы не продолжить разработку того же free dos?
В-четвертых, а вы уверены, что с вашими виндами все в порядке будет в ближайшие годы? вы уверены, что там нет подводных мин с часовым механизмом самоуничтожения в час x?. Я вот далеко в этом не уверен.
Допустим все грохнулось в один момент. Исходников ос нет. В итоге все ваши труды выкинуты на свалку. С линуксом тоже самое: я далеко не уверен, что и там все в порядке, так как в ядро давно встроили свои закладки АНБ. И где выход? Профям всё по барабану, конечно что писать и где писать и на чем писать лишь бы бабки платили. а если писать на будущее. Ну хотя бы для того, чтобы запустить комп с грохнувшейся системой? тут только через dos, без вариантов.
1
Эксперт по электронике
7140 / 3320 / 341
Регистрация: 28.10.2011
Сообщений: 13,062
Записей в блоге: 7
05.12.2021, 14:49
Цитата Сообщение от CoderHuligan Посмотреть сообщение
В смысле: api дергать только ограниченно и дозированно, а всю эту механику с кнопками, чекбоксами, прокрутками и пр. сделать в виде отдельного самостоятельного модуля. Тогда не пришлось бы этот модуль переписывать под другую платформу.
https://www.purebasic.com/docu... index.html
https://www.purebasic.com/docu... index.html

Цитата Сообщение от CoderHuligan Посмотреть сообщение
Во-первых, есть dos-32, возможно есть и под 64, но не слышал. Во-вторых, dos проще, как операционная система.
Смысл? Для DOS есть драйверы для современного железа? Под DOS просто написать приложение использующее сеть, USB, и др. возможности современных компов?
0
 Аватар для CoderHuligan
1753 / 1019 / 257
Регистрация: 30.06.2015
Сообщений: 5,132
Записей в блоге: 56
05.12.2021, 14:54
Цитата Сообщение от locm Посмотреть сообщение
Для DOS есть драйверы для современного железа?
Для очень современного не знаю. Но еще недавно можно было ставить драйверы usb, мыши и пр.
Цитата Сообщение от locm Посмотреть сообщение
Под DOS просто написать приложение использующее сеть, USB, и др. возможности современных компов?
Конечно! Все это есть уже и пишется, только под free dos. Зайдите на их сайт и удивитесь.
1
Модератор
10061 / 3906 / 885
Регистрация: 22.02.2013
Сообщений: 5,856
Записей в блоге: 79
05.12.2021, 14:59
Цитата Сообщение от locm Посмотреть сообщение
Ведь не так часто нужно присваивать в условных операторах.
Кому как. У меня в коде часто бывает такое:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
    // Инициализация COM
    if (FAILED(hr = CoInitialize(NULL))) {
        printf("CoInitialize failed 0x%x\r\n", hr);
        goto CleanUp;
    }
 
    // Создание сайта
    if (FAILED(hr = CreateSite(&pSite))) {
        printf("CreateSite failed 0x%x\r\n", hr);
        goto CleanUp;
    }
 
    // Создание движка
    if (FAILED(hr = CreateScriptEngine(L"VBScript", &pScript))) {
        printf("CreateScriptEngine failed 0x%x\r\n", hr);
        goto CleanUp;
    }
 
    // Указываем движку использовать наш сайт
    if (FAILED(hr = pScript->lpVtbl->SetScriptSite(pScript, pSite))) {
        printf("IActiveScript::SetScriptSite failed 0x%x\r\n", hr);
        goto CleanUp;
    }
0
Эксперт по электронике
7140 / 3320 / 341
Регистрация: 28.10.2011
Сообщений: 13,062
Записей в блоге: 7
05.12.2021, 15:11
Цитата Сообщение от CoderHuligan Посмотреть сообщение
Но еще недавно можно было ставить драйверы usb, мыши и пр.
То есть, есть дрова для всех чипсетов? Так чтобы работало на любом компе как это с современным ПО.
0
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
05.12.2021, 15:58
Цитата Сообщение от CoderHuligan Посмотреть сообщение
Непричастным к профи, но к кодингу причастным, потому что кодил что-то. всё же что-то да умею. Не всё, но кое что могу. Я же годы потратил на все это (а зачем?..), бесследно это не проходит..))
Проходит, хулиган, проходит
Под кодингом так или иначе имелся в виду софт, а не что-то аморфное, чисто эмпирически
не пришедшее к общему знаменателю.

Цитата Сообщение от CoderHuligan Посмотреть сообщение
а всю эту механику с кнопками, чекбоксами, прокрутками и пр. сделать в виде отдельного самостоятельного модуля. Тогда не пришлось бы этот модуль переписывать под другую платформу.
Давай назовём это своими именами - "принцип криворукого абстрагирования", не учитывающий специфику
операционной системы. Потому что GUI это чуть больше, чем просто механика. Его ещё и отрисовать надо и
повзаимодействовать с ним, а это зависит от возможностей как ОС так и железа. В рамках одной программы
можно творить всё, что вздумается, но если же речь об интеграции, тут подходы иные.
Грубо говоря, переписывать, усиленно тестируя, на новую платформу придётся всегда.

Цитата Сообщение от CoderHuligan Посмотреть сообщение
Допустим все грохнулось в один момент. Исходников ос нет. В итоге все ваши труды выкинуты на свалку
Если ВСЁ грохнется в момент, то мы будем бегать с дубинами как аборигены и колбасить друг друга
за остатки импровизированного хавца. Никакого хай тека и даже лоу тека не будет.

Цитата Сообщение от The trick Посмотреть сообщение
Если что я ничего не имею против & и &&
В PB помню довольно быстро привык к этим закорючкам, они там почти такие же как на си.
Но мне нравится "человечее" их обозначение. Скажу даже больше, где на FB прописано "AS тип переменная"
всегда меняю на классику "переменная AS тип". Потому что глаз мгновенно это схватывает, привычнее
и понятнее другим людям. Несмотря на то, что есть соблазн сделать по новому.

Цитата Сообщение от CoderHuligan Посмотреть сообщение
Я кстати согласен. Я вовсе не за брейнфак. Во всем нужна мера. Просто некторые товарищи все норовят в крайности впасть. Если уж verbose, то подавай verbose во всем и вся. Если обратное, то брейнфак без вариантов. А нужна золотая середина.
Нет золотой середины, есть то что используют и что не используют, а оно зависит от множества факторов.
Так сложилось, что стадные инстинкты управляют умами многих людей. И один из этих стадных
инстинктов т.н. "индустриальный стандарт", когда "лох цепенеет" и не принимает ничего более, не оценивает
благоразумно ситуацию в индустрии. Большинство цепенеющих не знают истории IT и на поверку принимают
любые факты.

Цитата Сообщение от CoderHuligan Посмотреть сообщение
А вот дедушка Вирт
Дедушка Вирт страдал "недостаточностью языковых средств" выполняя роль служанки при лопухе Дейкстре.
На жизнь им хватило, прошагали с девизом "а что там дальше нас не волнует". Впоследствии залупались
на "невозмутимость мирового сообщества" ))) Тут нечего добавить.

Сейчас языки растут как грибы после доджя. Всё больше и больше напрягая незатейливые умы юных страждущих.
А по факту ничего сильно не меняется, те же задачи, выше только технологичность, сейчас она в большинстве
случаев не по зубам программистам одиночкам.
0
 Аватар для CoderHuligan
1753 / 1019 / 257
Регистрация: 30.06.2015
Сообщений: 5,132
Записей в блоге: 56
05.12.2021, 16:36
Цитата Сообщение от locm Посмотреть сообщение
То есть, есть дрова для всех чипсетов?
Это невозможно ожидать от опен сорсного проекта. увы.
Меня вот иногда мучает ностальгия. У меня есть комп старый еще с dos 4. Когда то игрался на нем в игрушки. Он в рабочем состоянии, но чтобы запустить винт, надо вручную пальцем диск крутануть и то не факт что запустится))).. Как было замечательно в dos - прямой доступ к видеопамяти позволял творить невероятные вещи. Отсутствие других процессов не загружал процессор - он был в полном распоряжении программиста. Это же прекрасно. Нас всех посадили в клетку и сказали "от сих, до сих!".. Я никогда не откажусь от своего мнения, что многопользовательская система не нужна одному пользователю. Она по определению является рассадником вирусов, которые всегда с тобой.. Ну, что тут говорить..
Цитата Сообщение от Quiet Snow Посмотреть сообщение
Дедушка Вирт страдал "недостаточностью языковых средств" выполняя роль служанки при лопухе Дейкстре.
Согласен с этим. Правда Дейкстра был на голову умнее Вирта..
0
COM‐пропагандист
 Аватар для Замабувараев
936 / 785 / 149
Регистрация: 18.12.2014
Сообщений: 2,256
Записей в блоге: 4
05.12.2021, 17:59
Цитата Сообщение от The trick Посмотреть сообщение
Кому как. У меня в коде часто бывает такое:
Не знаю как вам, а мне вот не нравится использовать в условиях что‐то дающее побочный эффект, например, вызовы функций.

Оператор присваивания в Си реализован как настоящий оператор, то есть это функция которая принимает параметры возвращает значение. Это сделано для того, чтобы можно было писать плохо читаемый код в одну строку вроде «a = b = c».

Я пишу лесенкой и проверяю не на ошибку, а на успешность операции — тогда не нужно прыгать на CleanUp. Если операция успешна, то мы входим внутрь условия и продолжаем инициализацию, если не успешна, то делаем откат.
Вот реальный код из моего проекта, Lorem Ipsum удалён:
PureBasic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
Function CreateWebServer( _
        ByVal pIMemoryAllocator As IMalloc Ptr _
    )As WebServer Ptr
    
    Dim pIPool As IThreadPool Ptr = Any
    Dim hr As HRESULT = CreateInstance( _
        pIMemoryAllocator, _
        @CLSID_THREADPOOL, _
        @IID_IThreadPool, _
        @pIPool _
    )
    If SUCCEEDED(hr) Then
        Dim pIRequest As IClientRequest Ptr = Any
        hr = CreateInstance( _
            pIMemoryAllocator, _
            @CLSID_CLIENTREQUEST, _
            @IID_IClientRequest, _
            @pIRequest _
        )
        If SUCCEEDED(hr) Then
            Dim pIResponse As IServerResponse Ptr = Any
            hr = CreateInstance( _
                pIMemoryAllocator, _
                @CLSID_SERVERRESPONSE, _
                @IID_IServerResponse, _
                @pIResponse _
            )
            If SUCCEEDED(hr) Then
                Dim pINetworkStream As INetworkStream Ptr = Any
                hr = CreateInstance( _
                    pIMemoryAllocator, _
                    @CLSID_NETWORKSTREAM, _
                    @IID_INetworkStream, _
                    @pINetworkStream _
                )
                If SUCCEEDED(hr) Then
                    Dim this As WebServer Ptr = IMalloc_Alloc( _
                        pIMemoryAllocator, _
                        SizeOf(WebServer) _
                    )
                    If this <> NULL Then
                        
                        Dim EventsCreated As Boolean = True
                        
                        For i As Integer = 0 To SocketListCapacity - 1
                            this->hEvents(i) = WSACreateEvent()
                            If this->hEvents(i) = NULL Then
                                EventsCreated = False
                                Exit For
                            End If
                        Next
                        
                        If EventsCreated Then
                            InitializeWebServer( _
                                this, _
                                pIMemoryAllocator, _
                                pIPool, _
                                pINetworkStream, _
                                pIRequest, _
                                pIResponse _
                            )
                            ' Успешно, возвращаем объект
                            Return this
                        End If
                    End If
                    ' Откат
                    INetworkStream_Release(pINetworkStream)
                End If
                ' Откат
                IServerResponse_Release(pIResponse)
            End If
            ' Откат
            IClientRequest_Release(pIRequest)
        End If
        ' Откат
        IThreadPool_Release(pIPool)
    End If
    ' Ошибка, объект не создан и не проинициализирован
    Return NULL
    
End Function
Добавлено через 21 минуту
Цитата Сообщение от locm Посмотреть сообщение
Такой отладкой на мой взгляд неудобно пользоваться.
Почему ее не интегрировали в IDE?
Блокнот — это не IDE, не называйте редактор кода IDE. Так и Far Manager будет IDE, он ведь умеет ключевые слова раскрашивать и отступы расставлять.
Вот когда так называемая «IDE» научится хотя бы переходить к определению, выделять функцию в отдельный метод, подчёркивать неиспользуемые переменные или хотя бы показывать тип данных во всплывающей подсказке — вот тогда и поговорим, можно ли считать это «IDE».
Даже Visual Studio Code, в которой я пишу FreeBASIC программы, всё ещё не IDE.
0
Модератор
10061 / 3906 / 885
Регистрация: 22.02.2013
Сообщений: 5,856
Записей в блоге: 79
05.12.2021, 18:07
Цитата Сообщение от Замабувараев Посмотреть сообщение
Я пишу лесенкой и проверяю не на ошибку, а на успешность операции — тогда не нужно прыгать на CleanUp. Если операция успешна, то мы входим внутрь условия и продолжаем инициализацию, если не успешна, то делаем откат.
Ну мне такой подход не нравится, при определенном количестве вложенных условий текст программы уже не помещается на экране. Я уже приводил пример для меня код с вложенными условиями менее читаем.
0
COM‐пропагандист
 Аватар для Замабувараев
936 / 785 / 149
Регистрация: 18.12.2014
Сообщений: 2,256
Записей в блоге: 4
05.12.2021, 18:17
Цитата Сообщение от The trick Посмотреть сообщение
Ну мне такой подход не нравится
Вообще в фрибесике доступна RAAII, можно делать свой класс с инициализациями и при ошибке Return без GOTO CleanUp. Деструкторы будут вызваны автоматически в нужном порядке.
0
Модератор
10061 / 3906 / 885
Регистрация: 22.02.2013
Сообщений: 5,856
Записей в блоге: 79
05.12.2021, 18:27
Цитата Сообщение от Замабувараев Посмотреть сообщение
Вообще в фрибесике доступна RAAII, можно делать свой класс с инициализациями и при ошибке Return без GOTO CleanUp. Деструкторы будут вызваны автоматически в нужном порядке.
Можно-то можно, но нужно ли? Можно и исключение кинуть и в обработчике почистить. Можно заморочиться все unmanaged ресурсы обернуть в классы и забыть. Но одно дело когда это уместно, а другое когда это не нужно и проще добавить goto который не ухудшит читаемость кода, а наоборот улучшит. В этом коде я могу еще кучу unmanaged объектов/хендлов повставлять в коде - мне достаточно просто добавить соответствующее освобождение ресурса в CleanUp и ничего больше не нужно. Я не понимаю всей этой боязни гоуту, что люди готовы любыми путями пойти, даже делая код сложнее/менее читабельней/неоптимальней лишь бы в коде не было гоуту.
1
COM‐пропагандист
 Аватар для Замабувараев
936 / 785 / 149
Регистрация: 18.12.2014
Сообщений: 2,256
Записей в блоге: 4
05.12.2021, 18:49
Тут дело не в боязни GOTO, а что нужно будет перед очисткой проверить, не равен ли объект NULL. Ведь только часть объектов может быть создана, а другая — ещё нет. Либо делать GOTO на разные метки.
0
Модератор
10061 / 3906 / 885
Регистрация: 22.02.2013
Сообщений: 5,856
Записей в блоге: 79
05.12.2021, 18:51
Цитата Сообщение от Замабувараев Посмотреть сообщение
Тут дело не в боязни GOTO, а что нужно будет перед очисткой проверить, не равен ли объект NULL.
Ну а при вызове деструктора класса разве не будет этого? В деструкторе также будет проверка если ресурс получен - освободить.
0
COM‐пропагандист
 Аватар для Замабувараев
936 / 785 / 149
Регистрация: 18.12.2014
Сообщений: 2,256
Записей в блоге: 4
05.12.2021, 18:58
Кстати, лесенку свернуть можно, это умеет даже блокнот Notepad++ делать, потому что у неё отступы, а такой код с выравниванием в одну линию по левому краю не свернуть.

Добавлено через 1 минуту
Цитата Сообщение от The trick Посмотреть сообщение
деструктора класса разве не будет этого
Деструктор хорош тем, что он будет вызван автоматически, а код очистки ещё необходимо прописать в CleanUp, что можно банально забыть сделать.
0
COM‐пропагандист
 Аватар для Замабувараев
936 / 785 / 149
Регистрация: 18.12.2014
Сообщений: 2,256
Записей в блоге: 4
05.12.2021, 19:03
Вот пример сворачивания лесенки из If в VSCode:
Миниатюры
Подскажите про оператор IF THEN END IF  
0
Модератор
10061 / 3906 / 885
Регистрация: 22.02.2013
Сообщений: 5,856
Записей в блоге: 79
05.12.2021, 19:07
Цитата Сообщение от Замабувараев Посмотреть сообщение
Деструктор хорош тем, что он будет вызван автоматически, а код очистки ещё необходимо прописать в CleanUp, что можно банально забыть сделать.
Это сродни забыть написать код очистки в деструкторе, т.е. разницы нет. Вообще моя мысль была в том что я считаю что глупо создавать класс для обертывания unmanaged ресурса который используется только в одной-двух функциях. По моему мнению это и есть усложнение чтения кода.

Вон там в том же посте есть код от Microsoft с той же CleanUp меткой, переписав его в "лесенку" - это будет ад для чтения, по крайней мере для меня, также как и обертывание всех ресурсов в классы для RAII.
1
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
05.12.2021, 19:24
Цитата Сообщение от CoderHuligan Посмотреть сообщение
Правда Дейкстра был на голову умнее Вирта.
Они оба были не особо умны. Первый выдумал кучу брехни, второй уверовал и не смог в её реализацию.
Просто Вирт был программистом, а Дейкстра так, жалкий болтливый проходимец.

Цитата Сообщение от Замабувараев Посмотреть сообщение
Кстати, лесенку свернуть можно
Никогда так не делаю и принципиально против этой фичи. В QB подобное не допускалось.
А суть одна, нужно просто видеть параметры. И тут либо IDE должна их удобно показать,
либо, если такой возможности нет, программист сам должен их скопировать в комментарий рядом,
если ему конечно надо их видеть и у него не фотографическая память.
0
COM‐пропагандист
 Аватар для Замабувараев
936 / 785 / 149
Регистрация: 18.12.2014
Сообщений: 2,256
Записей в блоге: 4
05.12.2021, 19:37
Цитата Сообщение от Quiet Snow Посмотреть сообщение
Никогда так не делаю и принципиально против этой фичи. В QB подобное не допускалось.
А суть одна, нужно просто видеть параметры.
Ну почему же. Если код отлажен, то не обязательно постоянно держать его в поле зрения.
0
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
05.12.2021, 21:01
Цитата Сообщение от Замабувараев Посмотреть сообщение
Если код отлажен, то не обязательно постоянно держать его в поле зрения.
Параметры, которые программистам FB и некоторых других компиляторов дали возможность
переносить на другую строку начинают жрать нерациональное кол-во места, когда мы, следуя моде,
по одному параметру переносим на каждую строку. В итоге если в функцию у тебя уходит
много параметров, целый экран может быть тупо в них, это не поможет их увидеть вместе с кодом.
А так они в 1 строку и их не видно. Тут лучший вариант выбрать более мелкий шрифт, чтобы было
видно параметры(если нужно видеть ещё и их тип) или просто скопировать их без типа в комментарий
рядом, в 1 строчку можно уложить по несколько штук без знака _ запятой и типа.
Отлаженный код можно оставлять в 1 строку. Кому надо поскролят, зато прототип не будет жрать больше
1 строки. Не навязываю, для себя просто определил, что мои прототипы функций не будут жрать пол экрана,
мне так неудобно читать код и сами прототипы.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
05.12.2021, 21:01

Оператор условия не открывает ветвь then begin end, несмотря, на то, что условие выполняется
Учусь по самоучителю &quot;Песни о Паскале&quot;. Код программы предложенный автором не кидать, и ваши коды тоже т.к. сам хочу разобраться. Условие...

Про оператор IF
Добрый вечер. Переменная а получила значение а = &quot;Иванов Иван&quot;, нужно найти в списке этого &quot;Иванов Иван&quot; Запускаем цикл и...

Не могу поставить end. после else – пишет "ожидался оператор"
uses crt; var a:integer; k:string; begin; randomize; repeat clrscr; a:=random(4); if a=1 then begin

Подскажите случаи, когда количество begin и end в программе не совпадают
подскажите случаи когда кол-во begin &amp; end в прграмме не совпадают :swoon: вот первый : case .. of ..... end;

Простая задачка про тернарный оператор
Переписал с учебника простую задачку, однако на 10 и 12 строке показывает ошибки. Что тут не так? #include&lt;iostream&gt; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
120
Ответ Создать тему
Новые блоги и статьи
Расчёт периметра прямоугольника по координатам вершин
Maks 18.07.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Вычислить периметр прямоугольника, заданного координатами своих вершин на плоскости. Решение: Создан документ со следующими. . .
Подсчёт частоты трёхбуквенных слов в тексте
Maks 18.07.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Выясните, сколько раз в предложенном тексте встречается каждое трехбуквенное слово. Решение: Создан документ с единственным. . .
Сумма и количество положительных элементов в чётных строках массива
Maks 18.07.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Вычислить сумму и количество положительных элементов массива, расположенных в четных строках. Решение: Создан документ с. . .
Поиск произведения положительных чётных чисел в последовательности
Maks 18.07.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Дана произвольная последовательность целых чисел. Найти произведение положительных четных чисел данной последовательности. . . .
Обработка трёх чисел: утроение и возведение в степень
Maks 18.07.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Даны три действительных числа. Утроить те из них, значения которых неотрицательны, и возвести в четвертую степень отрицательные. . . .
Расчёт стоимости яблок по весу
Maks 18.07.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Написать программу вычисления стоимости некоторого количества (по весу) яблок. Решение: Создан документ, с табличной частью. . .
сукцессия 30. Фосфорный и азотный замки по "честному" закону лимитирования Либиха
anaschu 16.07.2026
Основные достижения за последние дни 1. Механизм отложенного высвобождения фосфора Добавлен специальный пул для медленного разложения меланизированных гиф ЕСМ Реализована разная скорость. . .
Запрет пометки на удаление и отмены проведения
Maks 16.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "ПутевойЛист" разработанного в КА2. Задача: запретить помечать на удаление и отменять проведения путевого листа при условии, если он сдан. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru