Бесконечность в паскале как написать
function RealInfinity(v:real):real; begin if v=0 then RealInfinity:=0 else if v>0 then RealInfinity:=1.7e38 else RealInfinity:=2.9e-39; end; |
function DoubleInfinity(v:Double):Double;
begin
if v=0 then DoubleInfinity:=0 else
if v>0 then DoubleInfinity:=1.7e308 else
DoubleInfinity:=5.0e-324;
end;
function SingleInfinity(v:Single):Single;
begin
if v=0 then SingleInfinity:=0 else
if v>0 then SingleInfinity:=3.4e38 else
SingleInfinity:=1.5e-45;
end;
function ExtendedInfinity(v:Extended):Extended;
begin
if v=0 then ExtendedInfinity:=0 else
if v>0 then ExtendedInfinity:=1.1e4932 else
ExtendedInfinity:=3.4e-4932;
end;
function CompInfinity(v:Comp):Comp;
begin
if v=0 then CompInfinity:=0 else
if v>0 then CompInfinity:=9.2e18 else
CompInfinity:=-9.2e18;
end;
function ByteInfinity(v:Byte):Byte;
begin
if v=0 then ByteInfinity:=0 else
if v>0 then ByteInfinity:=High(v) else ByteInfinity:=Low(v);
end;
function ShortIntInfinity(v:ShortInt):ShortInt;
begin
if v=0 then ShortIntInfinity:=0 else
if v>0 then ShortIntInfinity:=High(v) else ShortIntInfinity:=Low(v);
end;
function WordInfinity(v:Word):Word;
begin
if v=0 then WordInfinity:=0 else
if v>0 then WordInfinity:=High(v) else WordInfinity:=Low(v);
end;
function IntegerInfinity(v:Integer):Integer;
begin
if v=0 then IntegerInfinity:=0 else
if v>0 then IntegerInfinity:=High(v) else IntegerInfinity:=Low(v);
end;
Занятие 1. Pascal abc.net: Основные особенности при работе с переменными и условный оператор
Принцип локальности
В обычном Паскале описание переменных обычно находится до тела программы:
Если программный код достаточно большой, то такой вариант инициализации переменных весьма неудобен. В Pascal abc.net переменные могут описываться внутри тела программы — между begin и end и инициализироваться при описании.
В этом состоит принцип локальности: переменная описывается непосредственно перед началом своего использования.
Внутриблочные переменные позволяют сильно уменьшить количество глобальных переменных в разделе описания.
Т.е. чем ближе к месту использования описывается некоторый программный объект, тем читабельней код и модифицируемей программа.
begin var n:integer; read(n);
begin var n:=ReadInteger(‘введите n: ‘);
Теперь этот фрагмент кода можно вырезать и перенести в функцию или в модуль. В этом и заключается модифицируемость.
var n:=ReadInteger(); var n:=ReadReal();
var a: integer; b: real; begin a := 1; writeln(‘a := 1; a = ‘,a); a += 2; // Увеличение на 2 writeln(‘a += 2; a = ‘,a); a *= 3; // Умножение на 3 writeln(‘a *= 3; a = ‘,a); writeln; b := 6; writeln(‘b := 6; b = ‘,b); r /= 2; writeln(‘b /= 2; b = ‘,b); end.
для нескольких заданных x.
begin writeln(‘Введите значение x’); var x:=ReadReal; var a:=(x-3)*(x-3)*(x-3); var y:= 5*sqr(a)-8*a+2; writeln(‘Значение функции для x = ‘, y); end.
Задача abc_net 1. Найдите расстояние между двумя точками с заданными координатами (x1,y1) и (x2,y2) на плоскости. Расстояние вычисляется по формуле:
Проверьте правильность вашей программы на следующих значениях:
[Название файла: L1abc1.pas ]
Базовые типы и методы внутри стандартных типов
Для обращения к методам используется точечная нотация:
Исключение — управляемая ошибка, которую можно перехватывать и погашать.
WritelnFormat(‘f(<0>, <1>) = <2>‘, a, b, c);
то нужно просто заменить a, b на , :
WritelnFormat(‘ <0>+ <1>= <1>+ <0>= <2>‘, a, b, x + y)
Стандартные функции
Обмен значениями переменных происходит без использования буферной переменной:
Поиск максимального и минимального значения:
Операции целочисленного деления и остатка
[Название файла: L1abc2.pas ]
Работа с отдельными цифрами числа
begin var a := abs(readinteger); // модуль числа println(a div 100 + (a div 10) mod 10 + a mod 10); end.
Приведите лог работы программы с одним из введенных чисел в форме комментария.
[Название файла: L1abc3.pas ]
[Название файла: L1abc4.pas ]
Логические выражения и условный оператор
Логические переменные и выражения
Логическое выражение после его вычисления возвращает значение True (истина) или False (ложь).
Логическое выражение может включать:
begin var (a, b) := readinteger2; println(a > b); end.
[Название файла: L1abc5.pas ]
[Название файла: L1abc6.pas ]
Чаще всего логические выражения используются внутри условного оператора, который выполненяет определённые действия в зависимости от истинности выражения:
Короткая форма условного оператора:
if then // выполнится, если возвращает True
При использовании нескольких операторов в одном условии необходимы операторные скобки begin..end :
[Название файла: L1abc7.pas ]
[Название файла: L1abc8.pas ]
Рассмотрим оператор на примере:
Вводится номер единицы длины (целое число в диапазоне 1–5) и длина отрезка в этих единицах (вещественное положительное число). Найти длину отрезка в метрах.
begin var n := readinteger(‘Введите номер единицы:’); var a := readreal(‘Введите длину в заданных единицах:’); case n of 1: a /= 10; // дециметр 2: a *= 1000; // километр 4: a /= 1000; // миллиметр 5: a /= 100; // сантиметр end; println(‘Длина в метрах:’, a); end.
4. Бесконечность, человек, познание
4. Бесконечность, человек, познание
Вслед за философами эпохи Возрождения Паскаль рисует величественную картину бесконечной Вселенной. Понятие бесконечности занимает одно из центральных мест в системе его философских взглядов. Бесконечность буквально «привораживает» внимание Паскаля, являясь ему то под видом бесконечной природы, то в идее бесконечного и вездесущего бога, то как бесконечность человеческого познания, то в смысле бесконечных желаний и потребностей людей, то в образе бесконечной и милосердной любви и т. д. Бесконечность у Паскаля многолика, многопланова, и он говорит о ней то с героическим энтузиазмом, то с леденящим душу трагическим пафосом. Именно бесконечность обусловливает многообразные парадоксы человеческого бытия и познания, пронизывая все их структуры, зачаровывая разум и «сердце» человека. Но только «сердцу», считает Паскаль, дано постижение бесконечности, перед которой гордый разум приходит в замешательство, чувствует свою ограниченность и нередко впадает в заблуждения.
Особое внимание Паскаль уделяет анализу бесконечности в работах «О геометрическом уме» и «Мысли». В первой — геометрия выступает как источник представлений о бесконечности, во второй — естественнонаучные открытия XVII в., связанные с изобретением и усовершенствованием микроскопа и телескопа. Паскаль усматривает в идее бесконечной делимости чисел, пространства, времени и движения основу геометрии, полагая, что без понимания этого «геометром можно быть не более, чем человеком без души». Понятию неделимой точки в геометрии он противопоставляет понятие бесконечно делимого элемента, обнаруживая в этом несомненное влияние приемов и методов исследования бесконечно малых, все более утверждающихся в математике того времени.
С другой стороны, Паскаль обнажает противоречивость при переходе от неделимых элементов к делимым пространственно-временным отрезкам. «Неделимое», поясняет он, есть бесструктурное целое, лишенное каких бы то ни было частей и, следовательно, протяжения, тогда как все делимое структурно и протяженно. Между тем именно «неделимые» составляют делимое. Как же «неделимое», т. е. небытие протяжения, спрашивает Паскаль, может превратиться в бытие протяжения? Словом, как «ничто» может породить «нечто»? Это противоречие он считает неразрешимым без отказа от самой идеи «неделимого» и без естественного допущения бесконечной делимости всех геометрических элементов. Паскаль понимает эти последние не только в плане чисто геометрическом, но и как реальные элементы бытия природы, т. е. как объективные пространство, время и движение. Бесконечная делимость (как бесконечное уменьшение) «бытийных» элементов природы обеспечивает их вечность, неуничтожимость: бесконечность природы в этом направлении, т. е. вглубь, есть «бесконечность в малом» (l’infinite en petitesse). Бесконечность природы вширь (как бесконечное увеличение) есть «бесконечность в большом» (l’infinite en grandeur). Эти две бесконечности необходимо связаны между собой, взаимно обусловливают друг друга, являя пример поистине диалектического совпадения противоположностей. В этом произведении мы видим у Паскаля не христианское уничижение природы перед богом, но ренессансное ее воспевание и даже какое-то «языческое благоговение» перед ней. Он говорит о «величии и могуществе природы в этой двойной бесконечности», «совершенной простоте» ее форм и законов, бесконечном творчестве природы, универсальной взаимосвязи в ней (см. там же, 354; 358–359). Интересно отметить, что у Декарта лишь бог действительно бесконечен (infini), а природа только безгранична (indefinie). У Паскаля же и бог, и природа infinis. Используя современную терминологию, можно сказать, что бог у Паскаля представляет актуальную, т. е. завершенную, бесконечность, а природа — потенциальную, незамкнутую, осуществляющую бесконечность.
Диалектические идеи далее развиваются и конкретизируются Паскалем в «Мыслях». Рисуя в них знаменитый образ бесконечности (идущий от основателя неоплатонизма Плотина и воспринятый в период средневековья Эриугеной, Экхартом, Таулером и др., а также творчески используемый в эпоху Возрождения Николаем Кузанским), Паскаль говорит «о бесконечной сфере, центр которой везде, а окружность нигде» (там же, 526, фр. 199). Ввиду отсутствия у него ссылок на источники иногда считают этот образ «знаменитым паскалевским». Во всяком случае философия Нового времени обязана Паскалю не меньше, чем Николаю Кузанскому, распространением идеи бесконечности универсума.
По сравнению с бесконечной Вселенной весь видимый мир кажется Паскалю «неприметной чертой»: конечное как бы «стирается» в присутствии бесконечного, хотя и не обращается в нуль. Даже очень маленькое живое существо (какой-нибудь клещ!) поражает нас своим сложным и уникальным строением, до последних элементов которого столь же трудно дойти, как и объять необъятное. «Новая бездна», согласно Паскалю, открывается и в самом малом в природе. Скорее устанет и истощится наше воображение, чем иссякнет природа в бесконечном творчестве многообразных форм.
Эти «лики» бесконечности дополняются бесконечной и всеобщей взаимосвязью всех вещей в мире как между собой, так и с мировым целым. «Части мира» так «сцеплены» друг с другом и с целым, что невозможно познать одно без другого и без целого. И точно так же начало и конец всех вещей, как и всего мира, генетически увязаны в один «клубок», начало которого скрыто в глубине бесконечных переплетений, а конец непонятен без начала. Все эти элементы диалектического видения мира затем получат свое дальнейшее развитие в творчестве Лейбница.
Образ двойной бесконечности запечатлен на всех вещах. Что же представляет собой человек в «обширном лоне природы»? — спрашивает Паскаль и отвечает: «Ничто по сравнению с бесконечностью, все по сравнению с небытием, середина между ничем и всем, бесконечно удаленная от понимания крайних пределов; конец и начала вещей скрыты от пего в непроницаемой тайне. Равно неспособен он увидеть ничто, из которого извлечен, и бесконечность, которая его поглощает» (там же, 526, фр. 199). Как видим, «Мысли» Паскаля, задуманные как «Апология христианской религии», дают иную трактовку соотношению бытия и ничто, чем работа «О геометрическом уме». Для Паскаля-христианина становится вполне естественной мысль о том, что ничто может породить нечто: ведь бог сотворил этот мир (и всех тварей на земле, и человека в том числе) буквально ех nixilo, из ничего. Что невозможно в царстве природы по законам естественным, то для бога оказывается единственно возможным.
Зная наше истинное положение в мире, мы должны понимать, что не можем «всего» знать, ибо для этого надо было бы обладать способностью познания столь же бесконечной, как и сама природа. Причем бесконечная гносеологическая способность необходима для постижения не только мира в целом, бесконечно великого, но и части мира, и каждой отдельной вещи, и бесконечно малого, поскольку все это «увязано в один клубок». Поэтому нельзя обольщаться ни кажущейся простотой вещей, ни малостью предмета исследования, ни ограниченностью видимого горизонта познания, не забывая о скрытой за всем этим бесконечности.
Между тем человек ограничен и конечен как по своей природе так и по всем своим способностям. Его чувства и разум постигают только определенный диапазон явлений. Так, например, чувства человека не переносят никаких крайностей: слишком сильный шум нас оглушает, слишком яркий свет ослепляет, очень далекое и очень близкое расстояния мешают нам видеть, мы не чувствуем ни крайнего тепла, ни крайнего холода и т. д. и т. п. (см. там же, 527, фр. 199). Разум ограничен и сам по себе, поскольку не все может доказать, и в силу различных и многочисленных условий и обстоятельств (личный интерес, нравственные пороки, страсти, воображение, болезни и др.), которые мешают ему видеть истину и нарушают «естественный ход» его мыслей. Кто не знает, говорит Паскаль, что иные люди не переносят одного вида котов, крыс, звуков раздавливания угля до того, что их «разум срывается с петель». «Наш собственный интерес есть превосходное средство для отвода глаз. Так что даже самому правдивому человеку в мире нельзя быть судьей в своем собственном деле… Верное средство проиграть самое справедливое дело — поручить его ближайшим родственникам» (там же, 505, фр. 44).
Любовь и ненависть, другие страсти души, как и болезни тела, «повреждают» наши чувства и разум. Особо Паскаль выделяет воображение в качестве причины заблуждений. Умея безраздельно господствовать над человеком, воображение «установило в нем вторую природу», подчас враждебную разуму. Даже самый великий философ в мире не сможет без страха и колебаний пройти по очень широкой доске, переброшенной через пропасть, хотя бы разум и убеждал его в полной безопасности. Иные при одной мысли об этом бледнеют и обливаются холодным потом (см. 14, 504, фр. 44). С другой стороны, воображение может сделать людей счастливыми, хотя и не может их сделать мудрыми, как разум. Но мудрый, чистый, благородный разум поддается всякому влиянию, не умея противостоять воображению, которое зачастую берет над ним верх. «Сколько бы разум ни кричал, он не может сам оценивать вещи» (там же, 504, фр. 44), и «воображение правит миром», создавая в нем красоту, справедливость и счастье. Воображение преувеличивает заслуги великих мира сего, облаченных в пышные одежды, вселяет уверенность в справедливость судей, выступающих в своих красных мантиях. Надо иметь слишком возвышенный ум, говорит Паскаль, чтобы увидеть «просто человека» в великом сеньоре, окруженном сорока тысячью янычар в своем роскошном дворце. Воображение настолько владеет людьми, что даже самый мудрый человек, если бы захотел следовать одному только разуму, показался бы всем явным безумцем.
Каким диссонансом общепризнанному культу человеческого разума в его время звучат все эти неутешительные сентенции о слабости и недостатках гордого «владыки» мира и познания! Как бы желая его совершенно развенчать, Паскаль, наконец, представляет разум еще и смешным: «Ум человека, этого верховного судьи мира, не настолько независим, чтобы не быть смущенным первым же шумом, возникшим около него. Не надо грохота пушек, чтобы помешать течению его мыслей. Достаточно шума флюгера или блока. Не удивляйтесь, если он теперь плохо рассуждает, муха жужжит у него над ухом: этого достаточно, чтобы он перестал трезво мыслить. Если вы хотите, чтобы он обрел способность снова видеть истину, прогоните это животное, которое сбивает его разум с толку и смущает этот могущественный ум, управляющий городами и государствами. Забавный же этот бог. Какой смешной герой!» (там же, 506, фр. 48)). Очень легко истолковать этот фрагмент и ему подобные в духе полнейшей дискредитации разума Паскалем в угоду христианскому вероучению. Но все дело в том, что живая и глубокая мысль Паскаля, железная логика математика, интуиция ученого-естествоиспытателя далеко уводят его за пределы религиозной веры. Он видит истину не только — и не столько! — через «религиозные очки», но и посредством своего «естественного света» разума и чувств.
Его диалектический ум не переносит никаких односторонних суждений, однозначных решений, необоснованных преувеличений. Не случайно, что в противовес «культу разума» он не выдвигает «культа чувств» или интуиции, но определяет каждой гносеологической способности свою «законную» сферу компетентности. Паскаль знает могучую силу и власть человеческого разума, величественнее которого для него нет ничего в природе (см. подробнее об этом в следующей главе), но, увы, — в отличие от рационалистов — он слишком хорошо знает и его слабости. Так что нельзя сказать, что Паскаль является «певцом» этих слабостей. Нет, он скорее их чуткий регистратор, тонкий «барометр». Он фиксирует их не бесстрастно, как сторонний наблюдатель, а с целой гаммой чувств: огорчения, тоски, боли, обиды, печального удивления, иронии.
Но лейтмотивом здесь оказывается ощущение глубокого парадокса, противоречия, разлада между высоким природным достоинством разума и его реальными слабостями. Именно потому, что в соответствии с духом своего времени Паскаль слишком высоко ставит человеческий разум, он «пронзительно» поражен его несовершенством: «Все достоинство человека заключено в мысли, но что такое эта мысль? Как она глупа! Она великолепна и несравненна по своей природе. Разве необходимо, чтобы она имела столь чуждые ей недостатки, за которые она достойна презрения, а между тем она полна ими до нелепости. Как она величественна по своей природе, как она низка по своим недостаткам» (там же, 597, фр. 756).
По своему природному достоинству разум должен бы являться критерием истины и неподкупным судьей в любом споре, но… сам подвержен влиянию всякого чувства. Разум и чувства ведут междоусобную войну, которая представляет «самую нелепую причину заблуждений». В ходе этой борьбы чувства и разум взаимно обманывают друг друга «ложной видимостью». Поразительно, но Паскаль как будто не обращает внимания на тот факт, что чувства и разум могут взаимно помогать друг другу.
Раскрывая различные причины человеческих заблуждений, Паскаль говорит о субстанциальной несоизмеримости мира и человека. Он принимает декартовский дуализм духовной и материальной субстанции, но делает отсюда отнюдь не картезианские выводы. Поскольку человек сложен, т. е. состоит из души и тела, постольку ему трудно постигать простые вещи, материальные либо духовные. Вот почему философы нередко смешивают идеи с вещами и говорят о телесных вещах как о духовных («тела стремятся вниз», «они противятся разрушению», «вещи имеют склонности, симпатии, антипатии» и т. д.), а о духовных — как о телесных. В последнем случае Паскаль имеет в виду ошибку Декарта, считавшего животных бездушными автоматами. Паскаль же признавал у них наличие воли и психической деятельности, видя в них промежуточное звено между бездушным механизмом природы и духовным миром человека. «…Машина… не делает ничего из того, что напоминало бы волю, которая есть у животных» (там же, 596, фр. 741).
Вместе с тем и сложные вещи человек знает не более, чем простые, ибо, считает Паскаль, мы меньше всего понимаем взаимосвязь души и тела. Он отвергает предположение, что человек есть только телесное существо, ибо в таком случае он ничего не мог бы знать. Основанием такого утверждения является убеждение Паскаля в том, что материя не может мыслить и «знать самое себя». Здесь он следует за Августином и Декартом, также считавшими «нелепостью» допущение о возможности «мыслящей материи».
Рассмотрев подробно причины человеческих заблуждений, а по сути дела указав на многочисленные трудности познания, Паскаль делает некоторые неутешительные выводы: «Справедливость и истина — два столь тонких острия, что наши инструменты слишком грубы, чтобы их касаться с точностью. Прикасаясь к ним, они их сплющивают и опираются на окружающую их плоскость, скорее на ложь, чем на истину» (там же, 505, фр. 44). Следующий вывод звучит с горькой иронией: «Следовательно, человек столь счастливо устроен, что не располагает никаким верным критерием (principe) истины, зато имеет несколько отличных критериев лжи» (там же). Но было бы значительной ошибкой, на наш взгляд, определять общий характер гносеологической позиции Паскаля, исходя только из вышеизложенного. Для этого необходимо рассмотреть отношение Паскаля к пирронизму и «догматизму» как основным, с его точки зрения, гносеологическим направлениям.
Данный текст является ознакомительным фрагментом.
Учитель информатики
Сайт учителя информатики. Технологические карты уроков, Подготовка к ОГЭ и ЕГЭ, полезный материал и многое другое.
Уроки Паскаль № 3 Константы и ввод данных
Здравствуйте, в этом уроке мы продолжаем изучать язык программирования Паскаль.
Уроки Паскаль № 3 мы поговорим что такое константы и ввод данных.
Урок № 3 Константы и ввод данных
Сразу создайте заготовку, в которой мы будем работать с константами. Только не подсматривайте написать её нужно из памяти.
Как только заготовка готова пропишем несколько переменных.
Program Constants;
var
a, b: integer;
begin
Теперь создадим константу. Что такое константа? Это похожее на переменную, но отличающее от неё тем что значение константы мы задаем сразу при описании и менять значение в процессе работы программы никак нельзя. В этом основное отличие. Почему переменная от слова «менять» потому что значение может меняться. Мы можем записывать новое значение переменной, а константа остается постоянной на протяжении всей работы программы.
Константа записывается так:
const
PI = 3.14;
H = ‘привет!’;
Это сделано что бы не путать переменные с константами в процессе работы программы. Когда программа маленькая отличить их просто, а если программа большая, то это становится проблематично.
Давайте что-нибудь сделаем с этими значениями. Наша программа выглядит так.
Выведем константу H на экран. Для это пишем оператор writeln(H);
Теперь изучим кое-что интересное. Это ввод значения. Мы можем выводить на экран значения, а как сделать так что бы человек мог ввести свое значение для этого используется оператор readln(); и здесь мы записываем какую-нибудь переменную.
Давайте создадим переменную типа string; в которой будем записывать имя пользователя. Которое у него будем спрашивать, назовем её так name: string ;
Выведем сообщение, пользователю которое даст ему понять, что мы этого хотим.
writeln(‘Введите здесь своё имя: ‘);
и в оператор readln(); запишем переменную name выглядеть это будет вот так.
readln(name);
После ввода пользователя имени мы выведем его имя на экран и добавим сообщение к его имени.
writeln(H, name);
После всех изменений наша программа будет выглядеть так:
program Constants;
const
PI = 3.14;
H = ‘Привет!’;
var
a, b: integer;
name: string;
begin
writeln(‘Введите здесь своё имя: ‘);
readln(name);
writeln(H, name);
После исполнения мы получим следующий результат.
Так же от пользователя мы можем принимать не только строки, но и числа.
У нас есть переменные a, b: integer; давайте сделаем простой калькулятор, который будет складывать два числа.
Вводим такие данные в конце программы
writeln(‘Введите значение а: ‘);
readln(a);
writeln(‘Введите значение b: ‘);
readln(b);
writeln(‘Сумма a + b = ‘, a+b);
Такой вот простейший калькулятор у нас получился.
Давайте уберем часть строк вот эти.
writeln(‘Введите здесь своё имя: ‘);
readln(name);
writeln(H,’ ‘, name, ‘.’);
Ошибка выводится потому что мы попытались в целочисленную переменную integer записать не целое число 3.14 поэтому в таких вещах когда вы будете писать свою программу в которой будет использоваться ввод данных от пользователя и вы не будете уверенны что пользователь введет целое число обязательное нужно использовать вещественный тип real
Заменим строку a, b: integer; на
a, b: real; программа будет выглядеть так:
program Constants;
const
PI = 3.14;
H = ‘Привет!’;
var
a, b: real;
name: string;
begin
writeln(‘Введите значение а: ‘);
readln(a);
writeln(‘Введите значение b: ‘);
readln(b);
writeln(‘Сумма a + b = ‘, a+b);
end.
И вот результат исполнения программы.
На этом надо заканчивать урок, сегодня мы познакомились с элементом типа string строковыми, с переменной типа real вещественными. С переменными пока закончим мы их естественно будем использовать в будущих уроках. В последующих уроках мы познакомимся с более сложными элементами такими как ветвление, циклы.