Help — коллекция статей, исходников, книг, ответов на вопросы программирования на языке программирования Delphi и Pascal.
— это среда быстрой разработки, в которой в качестве языка программирования используется язык Delphi. Язык Delphi — строго типизированный объектно-ориентированный язык, в основе которого лежит хорошо знакомый программистам Object Pascal.На сайте Delphi-Help вы можете скачать книги по Delphi, для дальнейшего изучения этого удивительного языка программирования. Также в файловом архиве доступны компоненты, исходники, программы для облегчения разработки своих собственных приложений. Все материалы и файлы на сайте бесплатны.
Это необходимо знать каждому программисту:
- Работа с ADO в Delphi
- Цикл с постусловием (REPEAT-UNTIL)
- Цикл с параметром (FOR)
- Цикл с предусловием (WHILE-DO)
- Циклические алгоритмы. Цикл с предусловием.
- Хранимые процедуры
- Создание и изменение базы данных в InterBase/Firebird
- Использование TWebBrowser (статья)
- Одномерные массивы. Формирование массива и вывод его элементов
- Руководство по TDbf
- Копирование и восстановление базы данных в InterBase / Firebird
- Алгоритм 3. Сортировка шейкером
- Работа с BLOB-полями в клиентских приложениях InterBase и Firebird на основе компонентов FIBPlus
- SQL-запросы в Delphi
- Учетные записи пользователя в InterBase/Firebird
- Ограничения базы данных
- TADOConnection
- Индексы
- Компонент Chart
- Типизированные файлы
- Список ошибок BDE
- QuickReport руководство
- Алгоритм 2. Пузырьковая сортировка
- Задача 579 на Pascal — Шифр Цезаря
- FIBPlus: Обработка ошибок базы данных
- Нетипизированные файлы
- Решение уравнения методом хорд, методом касательных (метод Ньютона), методом половинного деления, методом простых итераций
- Дипломная работа: Разработка базы данных для информатизации деятельности предприятия малого бизнеса Delphi
- Количество вхождений подстроки в строку
- Использование текстовых файлов для импорта и экспорта
- Сумма прописью (хорошая функция)
- Создание собственной кнопки в Delphi
- Firebird взаимодействие с NULL
- Как посчитать факториал?
- Как узнать номер недели данного дня в году?
- Devrace FIBPlus: Оптимизация сетевого трафика в приложениях на Delphi и C++ Builder
- Счетчик посещений на Delphi
- Cпроектировать и написать программу «Интерпретатор» на Pascal
- Перевод чисел из одной системы исчисления в другую
- Rave Reports-руководство разработчика
Общение
Авторизация
Логин
Пароль
Запомнить меня
- Забыли пароль?
- Забыли логин?
- Типизированные файлы
Типизированные файлы Тип файлов, для которого нет поддержки в OS…
- Задача 579 на Pascal — Шифр Цезаря
Задача 579 на Pascal — Шифр Цезаря Шифр Цезаря. Этот…
- Нетипизированные файлы
Нетипизированные файлы Третий тип файлов Паскаля, это нетипизированные файлы, этот…
- Использование текстовых файлов для импорта и экспорта
Использование текстовых файлов для импорта и экспорта Текстовые файлы являются…
- Как изменить дату создания файла?
Как изменить дату создания файла? function SetFileDateTime( const FileName: string;…
- Как изменить атрибуты файла?
Как изменить атрибуты файла? r — ReadOnly h — Hidden…
Счетчики
Файловый архив — популярное
FastReport full source v5. 2.12 | 25996 |
Базы данных в Delphi | 22078 |
Практикум по Delphi для решения прикладных задач | 19095 |
Delphi. Учимся на примерах | 16267 |
Delphi 7 для профессионалов | 14424 |
Программирование в Delphi 7 | 7107 |
Delphi. Профессиональное программирование | 6690 |
Основы Delphi. Профессиональный подход | 5219 |
Assembler. Учебный курс | 4084 |
Графика в проектах Delphi | 4082 |
Розница ИП v1.3 | 2769 |
Delphi 7 | 2509 |
DevExpress VCL Component | 2454 |
TXLSFile 4.0 | 2078 |
AlphaControls package | 2034 |
Последние статьи
- Рисуем на рабочем столе
Вы можете использовать поверхность рабочего стола для вывода любой графики. Этот способ может понадобится для написания различных напоминалок, показ праздников. Вы можете поселить на рабочем столе забавного персонажа из комикса…
- Работа с потоками в Delphi
Нередко встречал на форумах мнения, что потоки не нужны вообще, любую программу можно написать так, что она будет замечательно работать и без них. Конечно, если не делать ничего серьёзней…
- Перестановка чисел без третей переменой
Перестановка чисел без третей переменной. В данной статье рассмотрим способ, как поменять местами значения двух переменных без использования третей. Для этого нам понадобится, скажем, два edit и одна кнопка. Разместите…
Последние комментарии
Большая энциклопедия школьника
Большая энциклопедия школьникауникальное издание, содержащее весь свод знаний, необходимый ученикам младших классов. Для детей, собирающихся в 1-й класс, она послужит незаменимым помощником для подготовки к школе. В этой энциклопедии ребенок сможет найти любую интересующую его информацию, в понятном и простом для него изложении. Вы подбираете слова и определения для простых вещей, которые надо объяснить ребенку? Сомневаетесь в формулировках? Просто возьмите «Большую энциклопедию школьника» и найдите нужный ответ вместе с малышом!
Математика в стихах
Развитие речи
Азбука в картинках
Игры на развитие внимания
Как правильно выбрать школу
Ваш ребенок левша
Как готовить домашнее задание
Контрольные и экзамены
Большая энциклопедия школьника — это твой надёжный путеводитель в мире знаний. Она проведёт сквозь извилистые лабиринты наук и раскроет завесу великих тайн Вселенной. С ней ты поднимешься высоко к звёздам и опустишься на дно самых глубоких морей, ты научишься видеть мельчайшие организмы и осязать огромные пространства Земли. Отправившись в это увлекательное путешествие, ты значительно расширишь свой кругозор и поднимешься на новую ступень развития. Отныне никакие вопросы учителей не смогут поставить тебя в тупик, ты сможешь найти выход из любой ситуации. Мир знаний зовёт тебя. В добрый путь!
Ребенок не хочет учить буквы Ребенок не хочет учить буквы — Понимаете, ведь надо что-то делать! — с тревогой говорила мне полная, хорошо одетая дама, едва умещающаяся на стуле. Ее ноги в аккуратных лодочках были плотно сжаты (юбка до середины колена казалась слегка коротковатой для такой монументальной фигуры), руки сложены на коленях. — Ей же на тот год в школу, все ее сверстники уже читают, а она даже буквы … | Past continuous passive Страдательный залог образуется с помощью вспомогательного глагола ‘to be’. Страдательный залог глагола ‘to repair’ в группе ‘continuous’ : To be repaired = Быть исправленным. The road is being repaired = Дорогу чинят. The road is not being repaired = Дорогу не чинят. Is the road being repaired? = Чинят ли дорогу? The road was being repaired = Дорогу чинили. The road was not being repaired = Дорогу не чинили. Was the road being repaired? = Чинили ли дорогу? Страдательный … |
Определение формулы органического вещества по его молярной массе Задание: Определить формулу углеводорода, если его молярная масса равна 78 г. № п/п Последовательность действий Выполнение действий 1. Записать общую формулу углеводорода. Общая формула углеводорода СхНу 2. Найти молярную массу углеводорода в общем виде. М(СхНу)=12х +у 3. Приравнять найденное в общем виде значение молярной массы к данному в … | У У ЗВУК (У). 1) Удобная буква! Удобно в ней то, Что можно на букву Повесить пальто. У – сучок, В любом лесу Ты увидишь букву У. 2) ФОНЕТИЧЕСКАЯ ЗАРЯДКА. — Как воет волк! ( у – у – у ) 3) ЗАДАНИЯ. а) Подними руку, если услышишь звук (у): паук, цветок, лужа, диван, стол, стул, голуби, курица. б) Где стоит (у)? Зубы, утка, наука, кенгуру … |
while loop — cppreference.com
Язык C++
Операторы
Выполняет оператор повторно, пока значение условия становится ложным. Проверка проводится перед каждой итерацией.
|
[править] Синтаксис
attr (необязательно) while ( условие ) заявление | |||||||||
атрибут | — | (начиная с C++11) любое количество атрибутов |
состояние | — | любое выражение, контекстуально преобразуемое в логическое значение, или объявление одной переменной с инициализатором типа «скобка или равенство». Это выражение вычисляется перед каждой итерацией, и если оно дает false, цикл завершается. Если это объявление, инициализатор оценивается перед каждой итерацией, и если значение объявленной переменной становится ложным, цикл завершается. |
заявление | — | любой оператор, обычно составной оператор, являющийся телом цикла |
[править] Объяснение
Независимо от того, является ли оператор составным оператором, он всегда вводит область действия блока. Объявленные в нем переменные видны только в теле цикла, другими словами,
пока (--x >= 0) инт я; // я выхожу за рамки
то же, что и
пока (--x >= 0) { инт я; } // я выхожу за рамки
Если условие является объявлением, таким как T t = x, объявленная переменная находится в области видимости только в теле цикла и уничтожается и создается заново на каждой итерации, другими словами, такой цикл while эквивалентен
этикетка: { // начало области действия условия Т т = х; Если T) { заявление перейти к метке; // вызывает деструктор t } }
Если выполнение цикла необходимо прервать в какой-то момент, оператор break может использоваться как завершающий оператор.
Если выполнение цикла необходимо продолжить в конце тела цикла, в качестве ярлыка можно использовать оператор continue.
[править] Примечания
Как часть гарантии продвижения вперед C++, поведение не определено, если цикл, который не имеет наблюдаемого поведения (не вызывает функции ввода-вывода, не обращается к изменчивым объектам или не выполняет атомарные операции или операции синхронизации ) не заканчивается. Компиляторам разрешено удалять такие циклы.
[править] Ключевые слова
пока
[править] Пример
#includeосновной () { // цикл while с одним оператором интервал я = 0; в то время как (я < 10) я++; std::cout << i << '\n'; // цикл while с составным оператором интервал j = 2; в то время как (j < 9) { std::cout << j << ' '; j += 2; } std::cout << '\n'; // цикл while с условием объявления char cstr[] = "Привет"; инт к = 0; в то время как (char c = cstr[k++]) std::cout << с; std::cout << '\n'; }
Выход:
10 2 4 6 8 Hello
[edit] См.
также документациюC для while |
19. Для циклов | Учебник по Python
Автор Бернд Кляйн . Последнее изменение: 29 июня 2022 г.
На этой странице ➤
Введение
Как и цикл while, цикл for является оператором языка программирования, т. е. оператором итерации, который позволяет повторять блок кода определенное количество раз.
Практически нет языков программирования без циклов for, но цикл for существует во многих различных вариантах, то есть как синтаксис, так и семантика различаются от одного языка программирования к другому.
Различные виды петель for:
Контролируемый подсчетом цикл for (цикл for с тремя выражениями)
Это самый распространенный тип. Этот оператор используется в C. Заголовок цикла for такого типа состоит из выражения управления циклом с тремя параметрами. Обычно он имеет вид: для (А; Я; Я) A - это часть инициализации, Z определяет выражение завершения, а I - выражение подсчета, где переменная цикла увеличивается или увеличивается. Примером такого цикла является цикл for языка программирования C: для (я=0; я <= п; я++) Такой цикл for не реализован в Python!
Векторизация для петель
Они ведут себя так, как будто все итерации выполняются параллельно. То есть, например, все выражения в правой части операторов присваивания оцениваются до присваивания.
Цикл на основе итератора
Наконец, мы подошли к тому, который используется Python. Этот вид цикла for повторяет перечисление набора элементов. Обычно он характеризуется использованием неявного или явного итератора. На каждом шаге итерации переменной цикла присваивается значение в последовательности или другом наборе данных. Такой цикл for известен в большинстве оболочек Unix и Linux, и именно он реализован в Python.
Живое обучение Python
Нравится эта страница? Мы предлагаем интерактивных учебных курсов Python , охватывающих содержание этого сайта.
См.: Обзор курсов Live Python
Зарегистрироваться здесь
Синтаксис цикла For
Как мы упоминали ранее, цикл for Python — это итератор, основанный на цикле for. Он проходит через элементы списков, кортежей, строк, ключей словарей и других итераций. Цикл Python for начинается с ключевого слова «for», за которым следует произвольное имя переменной, которая будет содержать значения следующего объекта последовательности, который проходится пошагово. Общий синтаксис выглядит так:
для <переменной> в <последовательности>: <утверждения> еще: <утверждения>
Элементы объекта последовательности присваиваются один за другим переменной цикла; чтобы быть точным, переменная указывает на элементы. Для каждого элемента выполняется тело цикла.
Пример простого цикла for в Python:
языки = ["C", "C++", "Perl", "Python"] для языка на языках: печать (язык)
ВЫХОД:
С С++ Перл питон
Блок else является особым; в то время как программисты Perl знакомы с ним, это неизвестная концепция для программистов C и C++. Семантически он работает точно так же, как необязательный else цикла while. Он будет выполнен только в том случае, если цикл не был «разорван» оператором break. Таким образом, он будет выполнен только после того, как все элементы последовательности в заголовке будут использованы.
Если в потоке программы цикла for необходимо выполнить оператор break, цикл будет прерван, и поток программы продолжится с первого оператора, следующего за циклом for, если он вообще есть. Обычно операторы break завернуты в условные операторы, например.
edibles = ["бекон", "спам", "яйца", "орехи"] для еды в съестных припасах: если еда == "спам": print("Больше никакого спама, пожалуйста!") перерыв print("Отлично, вкусно" + еда) еще: print("Я так рад: никакого спама!") print("Наконец-то я наелся")
ВЫХОД:
Отличный, вкусный бекон Пожалуйста, больше никакого спама! Наконец я закончил набивать себя
Удалив "спам" из нашего списка съедобного, мы получим следующий вывод:
$ питон для . py Отличный, вкусный бекон Отличные, вкусные яйца Отличные, вкусные орешки Я так рада: никакого спама! Наконец я закончил набивать себя $
Может быть, наше отвращение к спаму не настолько велико, чтобы мы хотели перестать потреблять другую пищу. Теперь это вызывает оператор continue в игру. В следующем небольшом скрипте мы используем оператор continue , чтобы продолжить наш список съестных припасов, когда мы столкнулись со спамом. Итак, продолжить не дает нам есть спам!
edibles = ["бекон", "спам", "яйца","орехи"] для еды в съестных припасах: если еда == "спам": print("Больше никакого спама, пожалуйста!") продолжать print("Отлично, вкусно" + еда) print("Наконец-то я наелся")
ВЫХОД:
Отличный, вкусный бекон Пожалуйста, больше никакого спама! Отличные, вкусные яйца Отличные, вкусные орешки Наконец я закончил набивать себя
Функция range()
Встроенная функция range() — это правильная функция для перебора последовательности чисел. Он генерирует итератор арифметических прогрессий: Пример:
диапазон(5)
ВЫХОД:
диапазон(0, 5)
Этот результат не говорит сам за себя. Это объект, способный производить числа от 0 до 4. Мы можем использовать его в цикле for, и вы увидите, что это означает:
для я в диапазоне (5): печать (я)
ВЫХОД:
0 1 2 3 4
range(n) генерирует итератор для обработки целых чисел, начиная с 0 и заканчивая (n -1). Чтобы создать список с этими числами, мы должны привести range() к list(), как мы делаем в следующем примере.
список (диапазон (10))
ВЫХОД:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
range() также можно вызывать с двумя аргументами:
диапазон (начало, конец)
Приведенный выше вызов создает итератор списка чисел, начинающихся с , начинающихся
(включительно) и заканчивающихся числом, меньшим на единицу, чем end
.
Пример:
диапазон(4, 10)
ВЫХОД:
диапазон(4, 10)
список (диапазон (4, 10))
ВЫХОД:
[4, 5, 6, 7, 8, 9]
До сих пор приращение range() было равно 1. Мы можем указать другое приращение с помощью третьего аргумента. Приращение называется шаг
. Может быть как отрицательным, так и положительным, но не нулевым:
диапазон (начало, конец, шаг)
Пример с шагом:
список (диапазон (4, 50, 5))
ВЫХОД:
[4, 9, 14, 19, 24, 29, 34, 39, 44, 49]
Можно и в обратном порядке:
список (диапазон (42, -12, -7))
ВЫХОД:
[42, 35, 28, 21, 14, 7, 0, -7]
Функция range() особенно полезна в сочетании с циклом for, как мы можем видеть в следующем примере. Функция range() предоставляет числа от 1 до 100 для цикла for, чтобы вычислить сумму этих чисел:
п = 100 сумма = 0 для счетчика в диапазоне (1, n+1): сумма = сумма + счетчик print("Сумма от 1 до %d: %d" % (n, сумма))
ВЫХОД:
Сумма от 1 до 100: 5050
Живое обучение Python
Нравится эта страница? Мы предлагаем интерактивных учебных курсов Python , охватывающих содержание этого сайта.
См.: Обзор интерактивных курсов Python
Предстоящие онлайн-курсы
Основы Python для начинающих
Интенсивный курс повышения квалификации
Python для инженеров и ученых
Объектно-ориентированное программирование на Python
Зарегистрироваться здесь
Вычисление чисел Пифагора
Обычно считается, что теорему Пифагора открыл Пифагор, поэтому она и носит его имя. Однако ведутся споры о том, могла ли теорема Пифагора быть открыта ранее или другими независимо. Для пифагорейцев — мистического течения, основанного на математике, религии и философии, — целые числа, удовлетворяющие теореме, были особыми числами, которые были для них священными.
В наши дни пифагорейские числа перестали быть мистическими. Хотя некоторым школьникам или другим людям, не ладящим с математикой, они все же могут казаться таковыми.
Итак, определение очень простое: Три целых числа, удовлетворяющие условию a2+b2=c2, называются числами Пифагора.
Следующая программа вычисляет все числа Пифагора меньше максимального числа. Примечание. Мы должны импортировать математический модуль, чтобы иметь возможность вычислять квадратный корень числа.
из математического импорта sqrt n = int(input("Максимальное число?")) для a в диапазоне (1, n+1): для b в диапазоне (a, n): c_square = а**2 + б**2 c = интервал (sqrt (c_square)) если ((c_square - c**2) == 0): напечатать (а, б, в)
ВЫХОД:
3 4 5 5 12 13 6 8 10 7 24 25 8 15 17 9 12 15 9 40 41 10 24 26 11 60 61 12 16 20 12 35 37 13 84 85 14 48 50 15 20 25 15 36 39 16 30 34 16 63 65 18 24 30 18 80 82 20 21 29 20 48 52 20 99 101 21 28 35 21 72 75 24 32 40 24 45 51 24 70 74 25 60 65 27 36 45 28 45 53 28 96 100 30 40 50 30 72 78 32 60 68 33 44 55 33 56 65 35 84 91 36 48 60 36 77 85 39 52 65 39 80 89 40 42 58 40 75 85 40 96 104 42 56 70 45 60 75 48 55 73 48 64 80 48 90 102 51 68 85 54 72 90 56 90 106 57 76 95 60 63 87 60 80 100 60 91 109 63 84 105 65 72 97 66 88 110 69 92 115 72 96 120 80 84 116
Перебор списков с помощью range()
Если вам нужно получить доступ к индексам списка, не рекомендуется использовать цикл for для перебора списков. Мы можем получить доступ ко всем элементам, но индекс элемента недоступен. Однако есть способ получить доступ как к индексу элемента, так и к самому элементу. Решение заключается в использовании range() в сочетании с функцией длины len():
Фибоначчи = [0, 1, 1, 2, 3, 5, 8, 13, 21] для i в диапазоне (len (фибоначчи)): печать (я, фибоначчи [я]) Распечатать()
ВЫХОД:
0 0 1 1 2 1 3 2 4 3 5 5 6 8 7 13 8 21
Примечание. Если вы примените len() к списку или кортежу, вы получите количество элементов этой последовательности.
Живое обучение Python
Нравится эта страница? Мы предлагаем интерактивных учебных курсов Python , охватывающих содержание этого сайта.
См.: Обзор курсов Live Python
Зарегистрируйтесь здесь
Итерация списка с побочными эффектами
Если вы выполняете цикл по списку, лучше не изменять список в теле цикла. Взгляните на следующий пример:
цвета = ["красный"] для i в цветах: если я == "красный": цвета += ["черный"] если я == "черный": цвета += ["белый"] печать (цвета)
ВЫХОД:
['красный', 'черный', 'белый']
Чтобы избежать этих побочных эффектов, лучше всего работать с копией с помощью оператора среза, как показано в следующем примере:
цвета = ["красный"] для i в цветах[:]: если я == "красный": цвета += ["черный"] если я == "черный": цвета += ["белый"] печать (цвета)
ВЫХОД:
['красный', 'черный']
Мы еще могли что-то сделать, чего делать не следовало. Мы изменили список «цвета», но наше изменение никак не повлияло на цикл. Элементы, которые должны быть зациклены, оставались неизменными во время итераций.
Упражнения с циклами for
Упражнение 1
Это упражнение посвящено числу Рамануджана-Харди. Есть небольшой анекдот о математике Г.Х. Харди, когда он посетил индийского математика Шринивасу Рамануджана в больнице. Это выглядит так:
Помню, однажды я зашел к нему, когда он был болен, в Путни. Я ездил в такси номер 1729 и заметил, что номер показался мне довольно скучным и что я надеюсь, что это не было неблагоприятным предзнаменованием. «Нет, — ответил он, — это очень интересное число; это наименьшее число, которое можно выразить как сумму двух кубов двумя разными способами». 92$ четырьмя различными способами с целыми положительными числами a и b .Живое обучение Python
Нравится эта страница? Мы предлагаем интерактивных учебных курсов Python , охватывающих содержание этого сайта.
См.: Обзор курсов Live Python
Зарегистрироваться здесь
Решения
Решение упражнения 1
импортировать математику число = 1729 n = int (число ** (1/3)) кубы = {} для я в диапазоне (n + 1): для j в диапазоне (i): результат = я ** 3 + j ** 3 если результат в кубах: кубы[результат].append((i, j)) еще: кубы[результат] = [(i,j)] если результат > число: перерыв для x в кубах: если len(cubes[x]) > 1: печать (х, кубы [х])ВЫХОД:
1729 [(10, 9), (12, 1)]Решение упражнения 2
импортировать математику число = 1729 n = целое (число ** (1/2)) результаты = {} для диапазона (n+1): для b в диапазоне (a): результат = а**2 + а*б + б**2 если результат: результаты[результат].append((a, b)) еще: результаты[результат] = [(а,б)] если результат > число: перерыв для x в результатах: если len(результаты[x]) > 3: печать (х, результаты [х])ВЫХОД:
1729 [(25, 23), (32, 15), (37, 8), (40, 3)]Живое обучение Python
Нравится эта страница? Мы предлагаем интерактивных учебных курсов Python , охватывающих содержание этого сайта.