Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Degrees Celsius is 68 degrees Fahrenheit.




Для справок: формула для выполнения преобразования:

Fahrenheit = 1.8 * Celsius + 32.0

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

Enter the number of light years: 4.2

Light are 265608 astronomical units

Для дробных чисел используйте тип double и следующую формулу преобразования:

1 световой год = 63240 астрономических единиц

Задания 3 уровня

Пример выполнения задания 3 уровня

Вычислить: при x=3.

program Console;

 

{$APPTYPE CONSOLE}

 

uses

SysUtils;

var

F: Real;

x: Integer;

begin

x:= 3;

F:= Sqr(x + 1) + 3 * (x + 1);

Writeln(F:0:2);

 

Readln;

end.

Вычислить:

1. F=(x+1)2+3(x+1) при x=3. (28)

2. F=6x2+3(x2+1)2 при x=4. (963)

3. F=2(x+3)+3(x+3)2 при x=2. (85)

4. F=x2(x2+1) при x=6. (1332)

5. F=4x2+2(x2+1)2 при x=3. (236)

6. F=3(x+1)2+2(x+1)+2 при x=2. (35)

7. F=x2+2x+3 при x=4. (27)

8. F=x/2+(x/2)2 при x=8. (20)

9. F=(x+1)/5+(x+1)2 при x=4. (26)

10. F=x/3+(x/3)2+1 при x=6. (7)

11. F=((x+1)2+2(x+1))/4 при x=3. (6)

12. F=x2/2+(x2/2)2+3 при x=4. (75)

13. F=(x+1)/3+2(x+1)2 при x=5. (74)

14. F=(x+1)/3+(x+1)2 при x=5. (14,08)

 

Представление данных переменными

Существует две группы типов данных: базовые и составные, или производные. Базовые типы данных служат для представления целых чисел и чисел с плавающей точкой. Не следует, однако, считать, что все разнообразие базовых типов данных сводится только к двум перечисленным: ни один тип целочисленных данных и ни один тип данных с плавающей точкой по отдельности не смогут удовлетворить все потребности, возникающие при разработке программ. Поэтому существует некоторое количество разновидностей обоих типов данных. Позже мы рассмотрим несколько типов данных, которые являются производными от базовых типов данных. К числу этих дополнительных типов относятся массивы, строки, указатели и структуры. Кроме того, программе, конечно же, необходимы средства для идентификации хранимых данных. Мы рассмотрим один из методов решения этой задачи — применение переменных, а затем изучим, как выполняются арифметические действия. В завершение ь ознакомимся с преобразованием значений из одного типа в другой.

Простые переменные

В программах, как правило, хранится какая-либо информация (самая разнообразная — это, например, могут быть текущие цены акций, средняя влажность воздуха в августе, наиболее часто встречающаяся буква в тексте конституции и относительная частота ее употребления). Для хранения в компьютере элемента информации программа должна отслеживать три его основных свойства; в частности, она определяет:

• где хранится информация

• какое значение там хранится

• вид хранящейся информации

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

Предположим, что старший лаборант Игорь использует следующие операторы:

Var

braincount: Integer;

Begin

braincount:= 5;

Приведенные операторы означают, что программа запоминает целое число, а имя braincount представляет это значение (в данном случае 5). В сущности, программа выделяет область памяти, достаточно большую, чтобы хранить целое число, отмечает ее, присваивает этой области метку braincount и записывает в нее значение 5. Данные операторы не сообщают вам (или Игорю), где именно в памяти хранится значение, но программе известно местонахождение этой информации. Извлечь адрес переменной braincount из памяти можно при помощи операции @, с которой познакомимся позже, когда будем изучать еще один способ идентификации данных — с помощью указателей.

Имена переменных

Для переменных рекомендуется выбирать имена, отражающие их назначение.

Существует несколько простых правил именования, которые обязательны для применения:

· В именах можно использовать только следующие символы: буквы алфавита, цифры и символ подчеркивания (_).

· Первый символ имени не может быть цифрой.

· Символы верхнего и нижнего регистров рассматриваются как одинаковые.

· В качестве имен нельзя использовать ключевые слова языка DELPHI.

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

· В языке DELPHI на длину имени не накладывается никаких ограничений, т.е. учитывается каждый символ.

Целочисленные типы данных

Целые числа – это числа без дробной части, например 2, 98, -5286 или 0. Целых чисел в природе существует очень много (точнее, бесконечное количество), поэтому чтобы вместить их все, не хватит никакой, даже самой большой оперативной памяти компьютера. Следовательно, в любом языке программирования может быть представлена только часть всех целых чисел. Поэтому существует несколько типов таких данных. Это позволяет программисту выбрать такой тип целочисленных данных, который лучше всего соответствует требованиям конкретной программы. Такая тенденция, выражающаяся в том, чтобы тип данных соответствовал конкретным требованиям программиста, предшествовала появлению специализированных типов данных ООП.

В языке DELPHI различные типы целочисленных данных различаются по объему памяти, используемому для их хранения. Большой блок памяти может представлять большой диапазон целых чисел. Кроме того, одни типы данных (со знаком) могут представлять и положительные, и отрицательные значения, тогда как другие типы данных (без знака) не могут представлять отрицательные значения. Для описания объема памяти, используемого для хранения целочисленного значения, обычно применяют термин размерность. Чем больше памяти отводится для хранения значения, тем больше его размерность. Базовые типы целочисленных данных языка DELPHI (в порядке размерности) именуются

ShortInt 8-битовое целое

SmallInt 16-битовое целое

Integer 32-битовое целое

Byte 8-битовое целое без знака

Word 16-битовое целое без знака

Cardinal 32-битовое целое без знака

Типы данных со знаком

ShortInt, SmallInt, Integer – являются данными со знаком. Это означает, что диапазон их возможных значений разделяется приблизительно поровну между положительными и отрицательными величинами. Например, 16-разрядные данные типа SmallInt могут укладываться в диапазон от -32768 до +32767.

Чтобы узнать размерность целых чисел в конкретной системе, следует воспользоваться программными средствами языка. Во-первых, операция SizeOf возвращает размерность данных какого-либо типа данных или переменной (в байтах). (Операция — это встроенный элемент языка, с помощью которого выполняются определенные действия над одним или несколькими элементами данных для получения некоторого результата. Например, операция сложения, представленная знаком +, осуществляет сложение двух чисел.).

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

Программа 2_1

// предельные значения некоторых целочисленных типов данных

program Project1;

 

{$APPTYPE CONSOLE}

 

Uses

SysUtils;

 

Begin

//оператор sizeof возвращает размерность типа данных или переменной

Writeln('ShortInt is ', SizeOf(ShortInt), ' bytes');

Writeln('SmallInt is ', SizeOf(SmallInt), ' bytes');

Writeln('Integer is ', SizeOf(Integer), ' bytes');

Writeln;

//максимальное значение

Writeln('Maximum value:');

Writeln('ShortInt is ', High(ShortInt));

Writeln('SmallInt is ', High(SmallInt));

Writeln('Integer is ', High(Integer));

Writeln;

//минимальное значение

Writeln('Minimum value:');

Writeln('ShortInt is ', Low(ShortInt));

Writeln('SmallInt is ', Low(SmallInt));

Writeln('Integer is ', Low(Integer));

Writeln;

 

Readln;

end.

Результат:

ShortInt is 1 bytes

SmallInt is 2 bytes

Integer is 4 bytes

Maximum value:

ShortInt is 127

SmallInt is 32767

Integer is 2147483647

Minimum value:

ShortInt is -128

SmallInt is -32768

Integer is -2147483648

Типы данных без знака

Преимущество беззнакового типа — в том, что увеличивается максимально возможное значение данных. Например, тип данных SmallInt представляет данные, лежащие в диапазоне от - 32768 до + 32767, тогда как беззнаковая разновидность этого типа данных может представлять величины в диапазоне от 0 до 65535. Конечно, типы данных без знака можно использовать только для величин, которые никогда не бывают отрицательными (данные по населению, показатели инвентаризационной ведомости и т. п.).

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

Программа 2_2

// предельные значения некоторых целочисленных типов данных

program Project1;

 

{$APPTYPE CONSOLE}

 

Uses

SysUtils;

 

Begin

//оператор sizeof возвращает размерность типа данных или переменной

Writeln('Byte is ', SizeOf(Byte), ' bytes');

Writeln('Word is ', SizeOf(Word), ' bytes');

Writeln('Cardinal is ', SizeOf(Cardinal), ' bytes');

Writeln;

//максимальное значение

Writeln('Maximum value:');

Writeln('Byte is ', High(Byte));

Writeln('Word is ', High(Word));

Writeln('Cardinal is ', High(Cardinal));

Writeln;

//минимальное значение

Writeln('Minimum value:');

Writeln('Byte is ', Low(Byte));

Writeln('Word is ', Low(Word));

Writeln('Cardinal is ', Low(Cardinal));

Writeln;

 

Readln;

end.

В программе 2_3 иллюстрируется использование беззнаковых типов данных. В ней также показано, что может произойти, если в программе будет предпринята попытка выйти за границы диапазона возможных значений для целочисленных данных какого-либо типа. И здесь вы можете увидеть объявление константы, которая дает команду заменить в программе все имена ZERO числами 0.

Программа 2_3

// предельные значения целочисленных типов данных

program Project1;

 

{$APPTYPE CONSOLE}

 

Uses

SysUtils;

Const

ZERO = 0;

Var

Sam: Smallint; //16-битовое целое

Sue: Word; //16-битовое целое без знака

 

Begin

Sam:= High(Smallint);

Sue:= Sam;

Writeln('Sam has ', Sam, ' dollars and Sue has ', Sue, ' dollars deposited.');

Writeln('Add $1 to each account.');

Writeln('Now');

Inc(Sam);

Inc(Sue);

Writeln('Sam has ', Sam, ' dollars and Sue has ', Sue, ' dollars deposited.');

Writeln('Poor Sam!');

Writeln;

Sam:= ZERO;

Sue:= ZERO;

Writeln('Sam has ', Sam, ' dollars and Sue has ', Sue, ' dollars deposited.');

Writeln('Take $1 from each account.');

Writeln('Now');

Dec(Sam);

Dec(Sue);

Writeln('Sam has ', Sam, ' dollars and Sue has ', Sue, ' dollars deposited.');

Writeln('Lucky Sue!');

 

Readln;

end.

Результат:

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...