Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.06.2011, 21:58   #1
русяй
Новичок
Джуниор
 
Регистрация: 29.06.2011
Сообщений: 1
По умолчанию max:0:2 что значит 0 ???

writeln('Max=',max:0:2); 2-это кол-во знаков после запятой , а что значит 0 ??? и для чего он нужен
русяй вне форума Ответить с цитированием
Старый 29.06.2011, 22:18   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Ну вообще это э...ширина поля вывода? Вобщем например, если max:=7 и
write(max:5);
write(max:5);
write(max:5);
, то вывод будет такой:
Код:
    7   7    7
Удобно использовать при выводе массивов.
Если оно меньше числа (0 в данном случае), то ничего не произойдет. Просто нельзя по другому (без :0, тогда получится что зададим эту самую ширину, а не кол-во знаков после запятой) это записать, такой синтаксис.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.

Последний раз редактировалось Alex11223; 29.06.2011 в 22:23.
Alex11223 вне форума Ответить с цитированием
Старый 29.06.2011, 22:35   #3
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

здесь ноль нужен чтоб можно было второе значение задать(для ширины после запятой)
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 29.06.2011, 22:38   #4
unbanned
Форумчанин
 
Аватар для unbanned
 
Регистрация: 23.11.2010
Сообщений: 530
По умолчанию

writeln(max:0:2);
первая цифра - всего позиций под число (включая точку), вторая - позиций под дробную часть
unbanned вне форума Ответить с цитированием
Старый 29.06.2011, 22:41   #5
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Цитата:
включая точку
И минус, и дробную часть.
Кстати, а чем эти ответы отличаются от моего?)
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 30.06.2011, 08:34   #6
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

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

Если ли отличие при задании количества позиций вывод 0 (ноль) и 1 (единица)
т.е. отличаются ли (и чем!)
max:1
max:0
ну и
max:1:4
max:0:4

p.s. если не отличаются - тогда зачем разработчики сделали возможным задавать количество позиций вывода равным нулю?!


Заранее спасибо за ответы!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 30.06.2011, 09:59   #7
Jaguar83
Профессионал
Пользователь
 
Аватар для Jaguar83
 
Регистрация: 25.05.2011
Сообщений: 91
По умолчанию

Как я понимаю, первая цифра = 0 означает, что ширина поля не задаётся, т.е. число или строка будет выводиться как есть (незначащие нули будут отброшены, ширина поля будет определена автоматически). Если первая цифра = 1, то ширина поля уже задана. На практике это различие незаметно, т.к. для чисел и видимых символов минимальная ширина поля уже 1. Но отличие все-такие можно показать:
Код:
n:=1; s:='';
Write(s:0); Write(n);
Writeln;
Write(s:1); Write(n);
Помог? Будь человеком - жми на весы слева!
Jaguar83 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обясните что значит amator_roma Помощь студентам 0 23.06.2011 13:39
Что значит \n в С++ compod Общие вопросы C/C++ 11 02.05.2011 02:45
Что это за знак и что он значит? Яр|/||< (^_^) Свободное общение 10 04.07.2010 13:16
Что значит Inc(x)? Vadim123456 Помощь студентам 6 27.04.2010 23:19
что это значит Андрей1992 Помощь студентам 2 25.03.2010 21:04