Организация ввода и вывода данных
Представь, что ты создал самый мощный в мире искусственный интеллект, но забыл научить его разговаривать. Он знает ответы на все вопросы Вселенной, но молчит. В программировании всё работает так же: без команд ввода и вывода даже самый гениальный код бесполезен. Сегодня мы научим твои программы «слышать» пользователя и «отвечать» ему красиво.
Как программа учится общаться с миром?
Зачем это нужно?
Часто бывает так, что начинающие программисты зацикливаются на формулах, забывая о человеке, который будет нажимать на кнопки. Давай представим диалог с банкоматом, который выдает деньги, но не пишет на экране, сколько он выдал и какой остаток. Страшно? Вот именно.
💡 Важно понять одну вещь
Программа — это не просто «черный ящик» с цифрами. Это инструмент. А любой инструмент должен быть понятным. Ввод (Input) — это то, как мы передаем информацию в «мозг» компьютера. Вывод (Output) — это то, как компьютер показывает нам результат своих раздумий.
1. Вывод данных: Оператор Write
Сейчас мы узнаем, как заставить компьютер «подать голос». В языке Pascal (Паскаль) для этого есть специальный приказ — write.
📋 Синтаксис команды
Разберём это на примере: чтобы вывести что-то на экран, мы пишем имя команды, а в скобках указываем, что именно хотим показать.
write (<выражение 1>, <выражение 2>, ..., <выражение N>);
Данные отправляются из памяти на экран
Текст или переменная?
Как ты думаешь, почему иногда компьютер выводит само имя буквы, а иногда — число, которое за ней прячется? Всё дело в апострофах (одинарных кавычках).
write('s')— компьютер просто нарисует букву s.write(s)— компьютер заглянет в оперативную память, найдет там ячейку с именем s и выведет её содержимое (например, число 15).
Профессионалы часто комбинируют их: write('Результат = ', s). На экране мы увидим понятное: Результат = 15.
2. Форматирование: Чтобы числа не «слипались»
Часто бывает так, что программа выводит числа вот так: 120300. Это три разных числа (1, 20, 300) или одно огромное? Без пробелов не разобрать!
🔍 Магия двоеточия
В Pascal можно заранее сказать компьютеру: «Эй, зарезервируй под это число 5 пустых мест!». Это делается так: a:5.
Пример форматирования целых чисел:
| Команда | Что увидит пользователь | Пояснение |
|---|---|---|
| write(2, 4, 6); | 246 | Всё слиплось в кашу |
| write(2:3, 4:3, 6:3); | 2 4 6 | По 3 позиции на каждое число |
3. Вещественные числа: Точность до миллиметра
Когда мы работаем с дробными числами (типа real), Pascal по умолчанию любит использовать «научный формат» вроде 1.5000000000E+01. Это выглядит круто, но абсолютно нечитаемо для человека.
Настраиваем точность: от микрон до километров
🛠️ Двойное двоеточие
Для вещественных чисел мы используем два параметра: x:n:m
- n — общее количество позиций (включая точку и знак).
- m — сколько знаков оставить после запятой.
Пример: Если a = 15.12345, то команда write(a:6:2) выведет _15.12.
4. Сравнение языков: Pascal, Python, C++
Алгоритм один — «акценты» разные. Давай посмотрим, как одна и та же задача (вывод приветствия и числа) решается в разных мирах.
writeln('Привет, мир!');
write('Число: ', x:5:2);
print("Привет, мир!")
print(f"Число: {x:5.2f}")
🤔 Проверь себя
Попробуй ответить на вопросы, чтобы понять, готов ли ты к созданию своего первого калькулятора!
1. В чем разница между write и writeln? Представь это на примере печатной машинки.
Writeln после вывода текста переводит каретку (курсор) на новую строку. Write — оставляет там же.
2. Что будет на экране, если выполнить: write('5*5=', 5*5)?
На экране появится: 5*5=25. Компьютер сначала выведет текст, а потом вычислит выражение.