Задача - Форматированный вывод данных - программирование на разных языках

Задача — Форматированный вывод данных — программирование на разных языках

Задачи по программированию с решением для школьников
Want create site? Find Free WordPress Themes and plugins.

Задача — Форматированный вывод данных
— программирование на Pascal, Си, Кумир, Basic-256, Python

Продемонстрировать возможности

  • вывода данных в табличной форме (с выровненными столбцами),
  • выравнивания слева,
  • вывода вещественных чисел с заданным количеством знаков после запятой.

В языках программирования, имеющих практическое значение, предусмотрены специальные синтаксические конструкции, позволяющие выводить данные в поля заданной ширины, выравнивать их по разным краям поля, а также выводить вещественные числа в различных форматах.

В языках КуМир и Basic-256 подобных языковых возможностей найти не удалось. Если их действительно нет, то видимо потому, что данные языки являются исключительно учебными.

Pascal

var
m, n: real;
s1, s2: string[10];
begin
m := 1.45678;
n := -0.23451;
s1 := ‘Hello’;
s2 := ‘world’;
writeln(m:10:2, n:10:2);
writeln(s1:10, s2:10);
writeln;
write(s1:-9, s2);
end.       1.46     -0.23
Hello     world

Helloworld

В Pascal при выводе в поля заданной ширины следует указать через двоеточие после переменной (или непосредственно числа или строки) количество знакомест.

При выводе вещественных чисел после указания количества знакомест также через двоеточие указывается количество знаков после запятой. Они не являются добавочными к количеству знакомест, а включены в это количество. Если для вещественного числа не указать количество цифр после запятой, то число будет выведено в экспоненциальной форме.

Для выравнивания по левому краю, по аналогии с другими языками программирования, следует использовать минус перед числом-количеством знакомест. Однако для FreePascal это не сработало. Хотя компилятор не сообщил ни о какой ошибке.

Язык Си

#include <stdio.h>

main() {
printf(«%3d%10sn%3d%10sn», 1, «Hello», 2, «world»);
printf(«%-7.3fчисло Пиn», 3.141593);
}   1     Hello
2     world
3.142  число Пи

В языке C перед форматом данных (d, s, f и др.) указывается число знакомест. Для вещественных чисел через точку указывается число знаков в дробной части. Если требуется произвести выравнивание по левому краю, то перед числом знакомест ставят знак минус.

Python

print(«%8.3f» % 3.141593)
print(«%-8.3f число Пи» % 3.141593)

# Использование методов:

print(«hello».rjust(10)+’!’)
print(«hello».ljust(10)+’!’)
print(«hello».center(10)+’!’)    3.142
3.142    число Пи

hello!
hello     !
hello   !

В Питоне синтаксис вывода в поля заданной ширины и вывод дробных чисел аналогичны языку C.

Кроме того существуют специальные методы, позволяющие выравнивать по левому, правому краям, середине и др.

Did you find apk for android? You can find new Free Android Games and apps.

Добавить комментарий