🗊Презентация Записи в языке Pascal

Нажмите для полного просмотра!
Записи в языке Pascal, слайд №1Записи в языке Pascal, слайд №2Записи в языке Pascal, слайд №3Записи в языке Pascal, слайд №4Записи в языке Pascal, слайд №5Записи в языке Pascal, слайд №6Записи в языке Pascal, слайд №7Записи в языке Pascal, слайд №8Записи в языке Pascal, слайд №9Записи в языке Pascal, слайд №10Записи в языке Pascal, слайд №11Записи в языке Pascal, слайд №12Записи в языке Pascal, слайд №13Записи в языке Pascal, слайд №14Записи в языке Pascal, слайд №15Записи в языке Pascal, слайд №16Записи в языке Pascal, слайд №17Записи в языке Pascal, слайд №18Записи в языке Pascal, слайд №19Записи в языке Pascal, слайд №20Записи в языке Pascal, слайд №21Записи в языке Pascal, слайд №22Записи в языке Pascal, слайд №23Записи в языке Pascal, слайд №24Записи в языке Pascal, слайд №25Записи в языке Pascal, слайд №26Записи в языке Pascal, слайд №27Записи в языке Pascal, слайд №28Записи в языке Pascal, слайд №29Записи в языке Pascal, слайд №30Записи в языке Pascal, слайд №31

Содержание

Вы можете ознакомиться и скачать презентацию на тему Записи в языке Pascal. Доклад-сообщение содержит 31 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Записи 
в языке Pascal
Описание слайда:
Записи в языке Pascal

Слайд 2






Запись – это структурированный тип данных, состоящий из фиксированного числа компонентов одного или нескольких типов, называемых полями. Идентификатор (имя) поля должен быть уникален только в пределах записи.
 Обращение к значению поля осуществляется с помощью составного имени  - идентификатора переменной  (имени записи) и идентификатора поля, разделенных  точкой. 
 
Описание слайда:
Запись – это структурированный тип данных, состоящий из фиксированного числа компонентов одного или нескольких типов, называемых полями. Идентификатор (имя) поля должен быть уникален только в пределах записи. Обращение к значению поля осуществляется с помощью составного имени - идентификатора переменной (имени записи) и идентификатора поля, разделенных точкой.  

Слайд 3


Записи в языке Pascal, слайд №3
Описание слайда:

Слайд 4





В языке Turbo Pascal  различают  фиксированные и вариантные записи.
Фиксированная запись состоит из одного или нескольких полей, для каждого из которых при объявлении указывается имя (идентификатор) и тип
Описание слайда:
В языке Turbo Pascal различают фиксированные и вариантные записи. Фиксированная запись состоит из одного или нескольких полей, для каждого из которых при объявлении указывается имя (идентификатор) и тип

Слайд 5





Описание фиксированной записей
Type   имя типа  =  record
			имя поля 1 :  тип;
			имя поля 2 :  тип;
 			. . .
			имя поля N:  тип
			                   end;
Var   Имя записи :  имя типа;
Описание слайда:
Описание фиксированной записей Type имя типа = record имя поля 1 : тип; имя поля 2 : тип; . . . имя поля N: тип end; Var Имя записи : имя типа;

Слайд 6





Пример:
Type    Car = record
		   Number: string[10];	         {номер}
		   Marka: string[20];       {марка автомобиля}
		   FIO: string[50]	        {фамилия владельца}
			   end;
	Var   a,b: Car;
Пример обращения к полям записи:  
a. Marka,   B.FIO,  а.Number
Описание слайда:
Пример: Type Car = record Number: string[10]; {номер} Marka: string[20]; {марка автомобиля} FIO: string[50] {фамилия владельца} end; Var a,b: Car; Пример обращения к полям записи: a. Marka, B.FIO, а.Number

Слайд 7






Для упрощения доступа к полям записи используется оператор присоединения  With
 

 
где     With, do – зарезервированные слова ( с, делать);
           имя записи – имя переменной типа запись, за которым возможно следует список вложенных полей;
     оператор – любой (один) оператор языка Pascal  .

Например:     With    A do   Marka:=’Жигули’
Описание слайда:
Для упрощения доступа к полям записи используется оператор присоединения With     где With, do – зарезервированные слова ( с, делать); имя записи – имя переменной типа запись, за которым возможно следует список вложенных полей; оператор – любой (один) оператор языка Pascal . Например: With A do Marka:=’Жигули’

Слайд 8






К записям в целом применим оператор присваивания . 
Например  			А :=В 
Над полями записей можно выполнять любые операции, присущие данному типу.
Описание слайда:
К записям в целом применим оператор присваивания . Например А :=В Над полями записей можно выполнять любые операции, присущие данному типу.

Слайд 9






Pascal   допускает использование вложенных записей (т.е. поле  записи может быть в свою очередь тоже записью).
 
Уровень вложения  не должен превышать 9.
Описание слайда:
Pascal допускает использование вложенных записей (т.е. поле записи может быть в свою очередь тоже записью). Уровень вложения не должен превышать 9.

Слайд 10






Например:     
Type zap1 = record
			Day : byte;		{день}
			Month : 1..12;	{месяц}
			Year : word		{год}
			  end;
		zap2 = record
			FIO: string[30];	   {фамилия студента}
			Gruppa: integer;	   {номер группы}
			Birthday: zap1	   {дата рождения}
			  end;
	Var   Spisok:  array [1..10] of zap2;
Описание слайда:
Например: Type zap1 = record Day : byte; {день} Month : 1..12; {месяц} Year : word {год} end; zap2 = record FIO: string[30]; {фамилия студента} Gruppa: integer; {номер группы} Birthday: zap1 {дата рождения} end; Var Spisok: array [1..10] of zap2;

Слайд 11






Пример  обращения  к дню рождения  студента:   
For i:=1 to 10 do
With  spisok[i] , birthday  do  
day := 23;
Описание слайда:
Пример обращения к дню рождения студента: For i:=1 to 10 do With spisok[i] , birthday do day := 23;

Слайд 12






Задача:
Из  массива записей, содержащего информацию о преподавателях (фамилия_имя_отчество, читаемые  дисциплины) вывести в алфавитном порядке фамилии преподавателей, читающих заданную дисциплину.
Описание слайда:
Задача: Из массива записей, содержащего информацию о преподавателях (фамилия_имя_отчество, читаемые дисциплины) вывести в алфавитном порядке фамилии преподавателей, читающих заданную дисциплину.

Слайд 13


Записи в языке Pascal, слайд №13
Описание слайда:

Слайд 14






Program zapis;
type
Mas=array[1..10] of string;
 TRec = Record
       FIO: String[40]; {ФИО преподавателя}
       KOL: integer;	{количество читаемых 						дисциплин}
       DIS: Mas;		{перечень читаемых 						дисциплин}
     end;
  zap=array[1..15] of Trec;   
var rec:zap;
k:trec;
op,kol,i,j,n:integer;
st:string;
Описание слайда:
Program zapis; type Mas=array[1..10] of string; TRec = Record FIO: String[40]; {ФИО преподавателя} KOL: integer; {количество читаемых дисциплин} DIS: Mas; {перечень читаемых дисциплин} end; zap=array[1..15] of Trec; var rec:zap; k:trec; op,kol,i,j,n:integer; st:string;

Слайд 15






begin
writeln('Введите количество преподавателей ');
readln(kol);
For i:=1 to kol do
begin
Write('Введите ФИО -');
readln(rec[i].fio);
write('Введите количество дисциплин -');
readln(rec[i].kol);
For j:=1 to rec[i].kol do
 	begin
 		Write('Введите ',j,'-ую дисциплину- ');
 		readln(rec[i].dis[j]);
 	end;
 end;
Описание слайда:
begin writeln('Введите количество преподавателей '); readln(kol); For i:=1 to kol do begin Write('Введите ФИО -'); readln(rec[i].fio); write('Введите количество дисциплин -'); readln(rec[i].kol); For j:=1 to rec[i].kol do begin Write('Введите ',j,'-ую дисциплину- '); readln(rec[i].dis[j]); end; end;

Слайд 16






 op:=1;
 {сортировка массива записей в алфавитном порядке фамилий}
 while op=1 do  {op=1 – сортировка закончена}
 begin
 op:=0;		
 for i:=1 to kol-1 do
 if rec[i].FIO>rec[i+1].FIO then
 begin
 					k:=rec[i];
 					rec[i]:=rec[i+1];
 					rec[i+1]:=k;
 					op:=1;
 					end;
 end;
Описание слайда:
op:=1;  {сортировка массива записей в алфавитном порядке фамилий} while op=1 do {op=1 – сортировка закончена} begin op:=0; for i:=1 to kol-1 do if rec[i].FIO>rec[i+1].FIO then begin k:=rec[i]; rec[i]:=rec[i+1]; rec[i+1]:=k; op:=1; end; end;

Слайд 17






Writeln('Введите название дисциплины для поиска преподавателя');
 readln(st);
 op:=0; {op- признак наличия преподавателей, читающих заданную дисциплину}
 For i:=1 to kol do
 For j:=1 to rec[i].kol do
 if rec[i].dis[j]=st then begin
 				    op:=1;
   writeln(rec[i].Fio);
	end;
 if op=0 then 
 writeln ('нет преподавателей, читающих дисциплину -', st);
end.
Описание слайда:
Writeln('Введите название дисциплины для поиска преподавателя'); readln(st); op:=0; {op- признак наличия преподавателей, читающих заданную дисциплину} For i:=1 to kol do For j:=1 to rec[i].kol do if rec[i].dis[j]=st then begin op:=1; writeln(rec[i].Fio); end; if op=0 then writeln ('нет преподавателей, читающих дисциплину -', st); end.

Слайд 18






В языке Pascal   имеется возможность задать тип записи, содержащий произвольное число вариантов структуры.  Такие записи называются записями с вариантами. Записи с вариантами обеспечивают средства объединения записей, которые похожи , но не идентичны. Они состоят из фиксированной и вариантной частей.
Описание слайда:
В языке Pascal имеется возможность задать тип записи, содержащий произвольное число вариантов структуры. Такие записи называются записями с вариантами. Записи с вариантами обеспечивают средства объединения записей, которые похожи , но не идентичны. Они состоят из фиксированной и вариантной частей.

Слайд 19






Вариантная часть формируется с помощью оператора Case.  Он задает поле признака, которое определяет, какой из вариантов в данный момент будет активизирован. Значением признака в каждый текущий момент выполнения программы должна быть одна из расположенных далее констант. Константа, служащая признаком , задает вариант записи и называется константой выбора.
Описание слайда:
Вариантная часть формируется с помощью оператора Case. Он задает поле признака, которое определяет, какой из вариантов в данный момент будет активизирован. Значением признака в каждый текущий момент выполнения программы должна быть одна из расположенных далее констант. Константа, служащая признаком , задает вариант записи и называется константой выбора.

Слайд 20






Количество полей каждого из вариантов неограниченно. Объем памяти, необходимый для записи с вариантами, складывается из объемов полей фиксированной части и максимального по объему поля переменной (вариантной) части. 
Запись может иметь только одну вариантную часть и она должна размещаться в конце записи.
Описание слайда:
Количество полей каждого из вариантов неограниченно. Объем памяти, необходимый для записи с вариантами, складывается из объемов полей фиксированной части и максимального по объему поля переменной (вариантной) части. Запись может иметь только одну вариантную часть и она должна размещаться в конце записи.

Слайд 21





Описание вариантной  записи
Type   имя типа  =  record
	имя поля 1 :  тип;
	  	. . .
	имя поля N:  тип;
        Case  поле признака : тип of
	константа выбора 1 : (поле, … : тип);
	. . .
	константа выбора n : (поле, … : тип)
	 end;
 
Var    Имя записи :  имя типа;
Описание слайда:
Описание вариантной записи Type имя типа = record имя поля 1 : тип; . . . имя поля N: тип; Case поле признака : тип of константа выбора 1 : (поле, … : тип); . . . константа выбора n : (поле, … : тип) end;   Var Имя записи : имя типа;

Слайд 22





Например:
Type  Tmark1=record                 {экзамены 1 семестра}
			Matem1:byte;	       {математика}
			LinAlg:byte;	        {линейная алгебра}	
		   	Programir: byte;       {программирование}
		   	end;
			
          Tmark2=record		{экзамены 2 семестра}
			Mаtem2: byte;	{математика}
			Electron: byte;	{электроника}
			Fisika: byte;		{физика}
			DigAutom: byte;	{цифровые автоматы}
		             end;
Описание слайда:
Например: Type Tmark1=record {экзамены 1 семестра} Matem1:byte; {математика} LinAlg:byte; {линейная алгебра} Programir: byte; {программирование} end; Tmark2=record {экзамены 2 семестра} Mаtem2: byte; {математика} Electron: byte; {электроника} Fisika: byte; {физика} DigAutom: byte; {цифровые автоматы} end;

Слайд 23






Tstudent= record	{информация о студенте}
	FIO:string[40];	      {фамилия,имя,отчество}
	Gruppa:string[4];	      {группа}
	Year: integer;              {год рождения}
{вариантная часть}
	Case semester: byte  of         {выбор семестра}
	1: (mark1: Tmark1);
	2: (mark2: Tmark2)
	                еnd;
       		
Var   gr921: array[1..15] of  Tstudent;
Описание слайда:
Tstudent= record {информация о студенте} FIO:string[40]; {фамилия,имя,отчество} Gruppa:string[4]; {группа} Year: integer; {год рождения} {вариантная часть} Case semester: byte of {выбор семестра} 1: (mark1: Tmark1); 2: (mark2: Tmark2) еnd; Var gr921: array[1..15] of Tstudent;

Слайд 24





Program Katalog; {каталог лит-ры в библ}
Program Katalog; {каталог лит-ры в библ}
Type Publ=(Book, Journal, NewPaper);
Liter=record
		 title: string[50];   {название}
		 autor: string[50];   {автор}
		 Case V: Publ of {начало вариантной 	части}
		 Book: (YearB: integer);
		 Journal: (Num: 1..12;
				 YearJ: 1900..2012);
		 NewPaper: (Day:1..31;
				   Month: 1..12;
				   YearN: integer);
		  end;
Описание слайда:
Program Katalog; {каталог лит-ры в библ} Program Katalog; {каталог лит-ры в библ} Type Publ=(Book, Journal, NewPaper); Liter=record title: string[50]; {название} autor: string[50]; {автор} Case V: Publ of {начало вариантной части} Book: (YearB: integer); Journal: (Num: 1..12; YearJ: 1900..2012); NewPaper: (Day:1..31; Month: 1..12; YearN: integer); end;

Слайд 25





Const count=10;
Const count=10;
Var Katalog: array[1..count] of liter;
		i: 1..count;
		Yes_liter:boolean;{поиск заданной лит-ры}
		Vibor: byte; {выбор вида издания}
		E: Puble;  {для задания искомого типа}
//процедура ввода данных
Procedure Input_data;
Writeln(‘Введите кол-во литературы’,i);
Writeln(‘введите число, указывающее номер издания:’);
Readln(Vibor);{задание полю признака конкретного 			значения}
Описание слайда:
Const count=10; Const count=10; Var Katalog: array[1..count] of liter; i: 1..count; Yes_liter:boolean;{поиск заданной лит-ры} Vibor: byte; {выбор вида издания} E: Puble; {для задания искомого типа} //процедура ввода данных Procedure Input_data; Writeln(‘Введите кол-во литературы’,i); Writeln(‘введите число, указывающее номер издания:’); Readln(Vibor);{задание полю признака конкретного значения}

Слайд 26





Case Vibor of
Case Vibor of
1: Katalog[i].v:=Book;
2: Katalog[i].v:=Journal;
3: Katalog[i].v:=NewPaper;
End;
With Katalog[i] do
Begin
		Write(‘фамилия автора’);
		Readln (autor);
		Write(‘название книги’);
		Readln(title);
Описание слайда:
Case Vibor of Case Vibor of 1: Katalog[i].v:=Book; 2: Katalog[i].v:=Journal; 3: Katalog[i].v:=NewPaper; End; With Katalog[i] do Begin Write(‘фамилия автора’); Readln (autor); Write(‘название книги’); Readln(title);

Слайд 27





Case V of {начало ввода данных в вариант. часть
Case V of {начало ввода данных в вариант. часть
							записи}
Book: begin Write(‘год издания’);
			   Readln(YearB);
		 end;
Journal: begin Write(‘номер’); 					Readln(Num);
				Write(‘год издания’);
				 Readln(YearJ);
			end;
NewPaper: begin Write(‘день’);
				 Readln(Day);
				 Write(‘месяц’);
				 Readln(Month);
				 Write(‘год издания’);
				 Readln(YearN);
			end;
End
End;
Описание слайда:
Case V of {начало ввода данных в вариант. часть Case V of {начало ввода данных в вариант. часть записи} Book: begin Write(‘год издания’); Readln(YearB); end; Journal: begin Write(‘номер’); Readln(Num); Write(‘год издания’); Readln(YearJ); end; NewPaper: begin Write(‘день’); Readln(Day); Write(‘месяц’); Readln(Month); Write(‘год издания’); Readln(YearN); end; End End;

Слайд 28





//процедура вывода данных
//процедура вывода данных
Procedure Vivod_data;
Begin Write(‘литература №’);
		With Katalog[i] do 
		begin Write(‘название’, title);
			Write(‘фамилия автора’, autor);
		Case V of {начало вывода на экран 					вариантной части} 
Book: Write(‘год издания’, YearB);
	
Journal: begin Write(‘номер’, Num ); 			         Write(‘год издания’, YearJ);
		   end;
NewPaper: begin Write(‘день’, Day );
			  Write(‘месяц’, Month);
			  Write(‘год издания’, YearN );
		    end;
      end;
		end;
End;
Описание слайда:
//процедура вывода данных //процедура вывода данных Procedure Vivod_data; Begin Write(‘литература №’); With Katalog[i] do begin Write(‘название’, title); Write(‘фамилия автора’, autor); Case V of {начало вывода на экран вариантной части} Book: Write(‘год издания’, YearB); Journal: begin Write(‘номер’, Num ); Write(‘год издания’, YearJ); end; NewPaper: begin Write(‘день’, Day ); Write(‘месяц’, Month); Write(‘год издания’, YearN ); end; end; end; End;

Слайд 29





// поиск литературы по типу издания
// поиск литературы по типу издания
Procedure Find_liter;
Write(‘введите число, указывающее тип издания’);
Readln(Vibor);
Case Vibor of 
1: E:=Book;
2: E:=Journal;
3: E:= NewPaper
end;
Yes_liter:=false;{не найден ни один экземпляр 				издания}
Kol:=0;
Описание слайда:
// поиск литературы по типу издания // поиск литературы по типу издания Procedure Find_liter; Write(‘введите число, указывающее тип издания’); Readln(Vibor); Case Vibor of 1: E:=Book; 2: E:=Journal; 3: E:= NewPaper end; Yes_liter:=false;{не найден ни один экземпляр издания} Kol:=0;

Слайд 30








For i:=1 to count do
If Katalog[i].V=E then 
					begin
					kol:=kol+1;
					Vivod_data; {вывод}
					Yes_liter:=true
					 end;
If Yes_liter=false then Write(‘в библиотеке нет такой литературы’)
Else Write(‘всего в библиотеке таких изданий’, kol);
end;
Описание слайда:
For i:=1 to count do If Katalog[i].V=E then begin kol:=kol+1; Vivod_data; {вывод} Yes_liter:=true end; If Yes_liter=false then Write(‘в библиотеке нет такой литературы’) Else Write(‘всего в библиотеке таких изданий’, kol); end;

Слайд 31






//головная
begin
For i:=1 to count do
Input_data;  {ввод данных}
Find_data;   {поис литературы}
end.
Описание слайда:
//головная begin For i:=1 to count do Input_data; {ввод данных} Find_data; {поис литературы} end.



Похожие презентации
Mypresentation.ru
Загрузить презентацию