Завдання Python 1:
```
for i in range(15, 46, 3):
print(i)
```
Цей код використовує цикл `for` для виведення чисел від 15 до 45 з кроком 3.
Пояснення:
- `range(15, 46, 3)` створює послідовність чисел, починаючи з 15 і закінчуючи перед 46, з кроком 3. Тобто послідовність виглядатиме так: 15, 18, 21, 24, ..., 45.
- Цикл `for` перебирає кожне число з цієї послідовності.
- Кожне число `i` виводиться на екран за до функції `print(i)`.
Таким чином, програма виведе на екран числа від 15 до 45 з кроком 3.
Завдання Python 2:
```
surnames = ["Іванов", "Петров", "Сидоров", "Коваленко", "Морозов"]
for surname in surnames:
print(surname)
```
Цей код використовує цикл `for` для виведення 5 прізвищ зі списку.
Пояснення:
- Створюється список `surnames`, який містить 5 прізвищ.
- Цикл `for` перебирає кожен елемент `surname` зі списку `surnames`.
- Кожне прізвище `surname` виводиться на екран за до функції `print(surname)`.
Таким чином, програма виведе на екран усі 5 прізвищ зі списку.
Завдання Python 3:
```
correct_code = "password"
user_input = input("Введіть кодову фразу: ")
while user_input != correct_code:
print("Неправильний код!")
user_input = input("Введіть кодову фразу ще раз: ")
print("Ви ввели правильний код!")
```
Цей код перевіряє правильність введення кодової фрази з використанням циклу `while`.
Пояснення:
- Змінна `correct_code` містить правильний код.
- Користувачу виводиться повідомлення `Введіть кодову фразу: ` і за ється ввести кодову фразу.
- Цикл `while` перевіряє, чи введена фраза користувачем (`user_input`) не дорівню
є правильному коду (`correct_code`).
- Якщо фраза неправильна, виводиться повідомлення "Неправильний код!" і користувачу пропонується ввести фразу ще раз.
- Цей процес повторюється до тих пір, поки користувач не введе правильний код.
- Коли користувач вводить правильний код, виводиться повідомлення "Ви ввели правильний код!".
Таким чином, програма продовжує запитувати користувача ввести кодову фразу до тих пір, поки введений код буде вірним.
Завдання Python 4:
Результат наступної програми буде:
```
1 1 1
1 1 2
```
Пояснення:
- Перший цикл `for` (`for i in range(1, 2)`) виконається лише один раз, оскільки діапазон включає початкове значення 1, але не включає кінцеве значення 2.
- Другий цикл `for` (`for j in range(1, 3)`) також виконається лише один раз, оскільки діапазон включає початкове значення 1, але не включає кінцеве значення 3.
- Третій цикл `for` (`for k in range(1, 3)`) також виконається лише один раз за тієї ж самої причини.
- У кожній ітерації третього циклу виводиться поточні значення змінних `i`, `j` і `k` за до функції `print(i, j, k)`.
Таким чином, програма виведе два рядки: "1 1 1" і "1 1 2", оскільки всі цикли виконаються лише по одному разу.
Завдання Python 5:
```
for a in range(1, 10):
if 2 * (2 * a + 6) == 20:
print("Знайдено значення a:", a)
break
```
Цей код шукає значення `a`, при якому вираз `2 * (2 * a + 6)` дорівнює 20.
Пояснення:
- Цикл `for` перебирає значення `a` в діапазоні від 1 до 9 (10 не включено).
- У кожній і
терації обчислюється вираз `2 * (2 * a + 6)`.
- Якщо отримане значення дорівнює 20, виводиться повідомлення "Знайдено значення a: [значення a]", де [значення a] - поточне значення змінної `a`.
- Для зупинки циклу після знаходження першого відповідного значення використовується оператор `break`.
Таким чином, програма шукає значення `a`, при якому вираз `2 * (2 * a + 6)` дорівнює 20 і виводить це значення, якщо воно знайдене.
program LinearAlgorithm;
var
m, n, result: Real;
begin
// Ввод значений переменных m и n
write('Введите значение переменной m: ');
readln(m);
write('Введите значение переменной n: ');
readln(n);
// Вычисление общего ответа отношения m и n
result := m / n;
// Вывод результата
writeln('Общий ответ отношения m и n: ', result:0:2);
end.
В этом примере программа запрашивает у пользователя значения переменных m и n, а затем вычисляет и выводит результат отношения m и n с двумя знаками после запятой.
3.
program DistanceCalculation;
var
motorcycleSpeed, bicycleSpeed, time: Real;
distance: Real;
begin
// Ввод данных
motorcycleSpeed := 60; // Скорость мотоциклиста в км/ч
bicycleSpeed := 15; // Скорость велосипедиста в км/ч
time := 2; // Время встречи в часах
// Вычисление расстояния
distance := (motorcycleSpeed + bicycleSpeed) * time;
// Вывод расстояния
writeln('Расстояние от города до поселка: ', distance:0:2, ' км');
end.
В этом примере программа предоставляет заданные значения скорости мотоциклиста (60 км/ч), скорости велосипедиста (15 км/ч) и времени встречи (2 часа). Затем она вычисляет расстояние, перемножая сумму скоростей мотоциклиста и велосипедиста на время. Результат выводится на экран с точностью до двух знаков после запятой.
задачи на разветвляющиеся алгоритмы
1.
program BranchingAlgorithm;
var
num1, num2, product: Integer;
begin
// Ввод двух чисел
write('Введите первое число: ');
readln(num1);
write('Введите второе число: ');
readln(num2);
// Вычисление произведения
product := num1 * num2;
// Проверка знака произведения и вывод результата
if product < 0 then
begin
product := product * -2;
writeln('Произведение отрицательно. Результат: ', product);
end
else
begin
product := product * 3;
writeln('Произведение неотрицательно. Результат: ', product);
end;
end.
В этом примере программа запрашивает у пользователя два числа, а затем вычисляет и проверяет знак их произведения. Если произведение отрицательно, оно умножается на -2 и выводится на экран. В противном случае, если произведение неотрицательно, оно увеличивается в 3 раза и также выводится на экран.
2.
program BranchingAlgorithm;
var
number, sum: Integer;
begin
// Ввод двухзначного числа
write('Введите двухзначное число: ');
readln(number);
// Проверка на двухзначность числа
if (number < 10) or (number > 99) then
begin
writeln('Введено некорректное число.');
exit;
end;
// Вычисление суммы цифр числа
sum := (number div 10) + (number mod 10);
// Проверка на четность суммы цифр и изменение числа
if sum mod 2 = 0 then
begin
number := number + 2;
writeln('Сумма цифр четная. Результат: ', number);
end
else
begin
number := number - 2;
writeln('Сумма цифр нечетная. Результат: ', number);
end;
end.
Если число не соответствует требованию, программа выводит сообщение об ошибке. В противном случае, программа вычисляет сумму цифр числа и проверяет, является ли эта сумма четной. В зависимости от результата, число увеличивается на 2 или уменьшается на 2, а затем выводится на экран.
3.
program BranchingAlgorithm;
var
num1, num2, product: Real';
begin
// Ввод двух чисел
write('Введите первое число: ');
readln(num1);
write('Введите второе число: ');
readln(num2);
// Вычисление произведения
product := num1 * num2;
// Проверка знака произведения и вывод результата
if product < 0 then
begin
product := product * 8;
writeln('Произведение отрицательно. Результат: ', product:0:2);
end
else
begin
product := product * 1.5;
writeln('Произведение неотрицательно. Результат: ', product:0:2);
end;
end.
В этом примере программа запрашивает у пользователя два числа, а затем вычисляет и проверяет знак их произведения. Если произведение отрицательно, оно умножается на 8 и выводится на экран с двумя знаками после запятой. В противном случае, если произведение неотрицательно, оно увеличивается в 1,5 раза и также выводится на экран с двумя знаками после запятой.
задачи на циклы
1.
program LoopExample;
var
i: Integer;
begin
// Печать ряда повторяющихся чисел
for i := 1 to 10 do
begin
write('20 ');
end;
// Переход на новую строку
writeln;
end.
2.
program PrintNumbers;
var
a, b, i: Integer;
begin
// Ввод значений a и b
write('Введите значение a: ');
readln(a);
write('Введите значение b: ');
readln(b);
// Печать чисел от a до b
for i := a to b do
begin
writeln(i);
end;
end.
3.
program BirthdayGift;
var
age, dayCount: Integer;
giftAmount: Double;
begin
age := 1; // Начальный возраст
giftAmount := 1.0; // Начальная сумма подарка
dayCount := 1; // Счетчик дней рождений
// Подсчет дня, когда подарок превысит 100$
while giftAmount <= 100.0 do
begin
giftAmount := giftAmount * 2 + age;
Inc(dayCount);
Inc(age);
end;
// Вывод результата
writeln('Подарок превысит 100$ на ', dayCount, '-й день рождения');
end.