Главная → Уроки → Информатика 8 класс

§ 4.2. Организация ввода и вывода данных

Прочитай параграф о вводе и выводе данных в Паскале — операторах write и writeln, формате вывода, операторах read и readln и подсказках для пользователя — и ответь на 10 вопросов.

Не получается разобраться? Бесплатный ИИ-репетитор по информатике 8 класс разберёт ошибку по шагам и не даст списать.

Программы прошлого урока считали молча: оператор присваивания записывает результат в ячейку оперативной памяти, а на экране при этом ничего не появляется. Чтобы человек увидел ответ, программа должна его вывести. А чтобы программа каждый раз решала не одну и ту же задачу, ей нужно получать исходные данные от человека — это ввод. Как связаны ввод, память и вывод, показано на рисунке 1.

Вертикальная схема из трёх прямоугольников. Сверху «клавиатура», в середине «оперативная память» с тремя пустыми ячейками a, b и s, внизу «экран монитора». От клавиатуры вниз к памяти идёт стрелка с подписью «ввод: read, readln», от памяти вниз к экрану — стрелка с подписью «вывод: write, writeln»
Рис. 1. Ввод переносит значения с клавиатуры в память, вывод — из памяти на экран.

Оператор вывода write

Вывод на экран записывают так:

write(<выражение 1>, <выражение 2>, ..., <выражение N>)

Перечень в скобках называют списком вывода. В нём через запятую стоят выражения: числа, имена переменных и постоянных, целые формулы вроде a + b. Компьютер по очереди вычисляет каждое выражение и показывает на экране его значение.

Особый случай — текст. Любые символы, заключённые в апострофы, образуют строковую константу. Внутри апострофов можно писать всё, что набирается на клавиатуре, в том числе русские буквы и пробелы: оператор write('Привет!') покажет на экране Привет! — уже без апострофов. Буква k без апострофов — имя переменной, и на экран попадёт её значение, а 'k' в апострофах — просто буква k.

Дано: переменная k равна 24, выполняется оператор write('k=', k).

Решение. Первый элемент списка — строковая константа, поэтому на экран выводятся два символа: буква k и знак равенства. Второй элемент — имя переменной: компьютер берёт из ячейки k её значение и выводит его сразу следом.

Ответ: на экране появится k=24.

Значения выводятся вплотную

Сам оператор write ничего не вставляет между элементами списка. После write(2, 5, 8) на экране окажется 258, и человек прочтёт это как одно число двести пятьдесят восемь, а не как три отдельных числа. Разделители программист добавляет сам. Вот три способа; здесь и дальше пробел на экране показан знаком □:

write(2, ',', 5, ',', 8) — на экране 2,5,8: запятые выведены как строковые константы; write(2, ' ', 5, ' ', 8) — на экране 2□5□8: так же выведены пробелы; write(2:3, 5:3, 8:3) — на экране □□2□□5□□8: здесь задан формат вывода.

Формат вывода

Целое число, записанное после значения через двоеточие, называется форматом вывода. Оно говорит, сколько позиций (знакомест) на экране отвести под значение. Если цифр меньше, чем позиций, свободные места слева заполняются пробелами, и число оказывается прижатым к правому краю своего места. Например, write(24:5) выведет □□□24: из пяти позиций цифры заняли две, а три остались пробелами. Если же позиций заказано меньше, чем нужно, число не обрезается: место само расширяется до нужной ширины. Оператор write(24:1) покажет просто 24.

Формат удобен, когда числа выводят столбиком: единицы встают под единицами, десятки под десятками.

У вещественного числа формат состоит из двух чисел: x:N:M. Первое, N, — сколько позиций займёт число целиком, считая и точку. Второе, M, — сколько цифр будет после точки. Лишние цифры дробной части не отбрасываются, а округляются, недостающие дописываются нулями. Как числа 24 и 6.4 раскладываются по позициям, видно на рисунке 2.

Хочешь больше времени в телефоне?

В Family Track телефон открывается за уроки: прочитал параграф, сдал тест и получил минуты. Сколько минут стоит урок, решают родители. Отправь им ссылку, пусть посмотрят.

Отправить родителямПройти урок бесплатно

Вопросы из теста

Правильные ответы и разбор ошибок — в приложении: при пересдаче вопросы меняются, поэтому списать не получится.

Целая переменная k равна 40. Что появится на экране после выполнения оператора write('k')?

Выполнены три оператора: write('Да'); writeln('Нет'); write('Ок'). Как будет выглядеть экран?

Не получается разобраться? Бесплатный ИИ-репетитор по информатике 8 класс разберёт ошибку по шагам и не даст списать.

← § 4.1. Общие сведения о языке программирования Паскаль§ 4.3. Программирование линейных алгоритмов →