КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Приклад 11.4
Приклад 11.2 Результати прикладу 11.1 q FALSE; 2 TRUE; e FALSE; 4 TRUE; t FALSE;5 TRUE; 7 TRUE; 8 TRUE; 9 TRUE; h FALSE; j FALSE; 9 TRUE; 3 TRUE; j FALSE; 7 TRUE; Задано одновимірний масив. Обчислити D:= r+C+B, де r – сума додатних елементів заданого масиву, C - сума елементів заданого масиву значення якого співпадають із значеннями їх індексів, B- максимальний елемент заданого масиву. Схема алгоритму на Рис. 11.2. Program test_21_11_09; Const n=15; Var D,r,C,B:real; a:array [1..n] of real; i:integer; f:text; Begin assign(f,’dani.pas’); reset(f); r:=0; C:=0; for i:=0 to n do begin read(f,a[i]); if a[i]>0 then r:=r+a[i]; if a[i]=i then C:=C+a[i]; end; B:=a[1]; for i:=2 to n do if B<a[i] then B:=a[i]; D:=r+C+B; Writeln(f,’D=’,D); Close(f); End.
Рис.11.2
Рис.8.3 program golosni; Var t,r:text; a: array [1..50] of char; k,i: byte; begin assign(t,'golosd.pas'); reset(t); assign(r,'golosr.pas'); rewrite(r); for i:=1 to 50 do begin read(t,a[i]); writeln(r,a[i]); case a[i] of 'a','i','j','e','o','u': begin writeln(a[i]); k:=k+1; end; end;end; writeln(r,k); close(r);end.
Program max1; var a: array[1..9] of real; max,c:real; p,n,i,j:integer; f:text; Begin assign(f, 'masmax5d.pas'); reset(f); for i:=1 to 9 do begin read(f,a[i]); write(a[i]:6:2); end; writeln; i:=1;n:=1; P:=1; While n<=5 do begin max:=a[i]; While a[i]<>0 do begin if (max<=a[i]) then begin max:=a[i]; j:=i; end; i:=i+1; end; writeln('max[',p,']=',max:6:2,' max=',j); n:=n+1; c:=a[p]; a[p]:=max; a[j]:=c; i:=p+1; p:=p+1; end; end. Файл даних 'masmax5d.pas' 13.5 67.8 54.9 12.8 24.9 1.98 25.8 0.123 0 Результати виведені на екран 13.50 67.80 54.90 12.80 24.90 1.98 25.80 0.12 0.00 max[1]= 67.80 jmax=2 max[2]= 54.90 jmax=3 max[3]= 25.80 jmax=7 max[4]= 24.90 jmax=5 max[5]= 13.50 jmax=7 Змінна n використовується для визначення 5 найбільших елементів масиву. Змінна i визначає поточний порядковий номер масиву. У змінній j запам’ятовується номер найбільшого елемента. Змінна р використовується для того, щоб поміняти місцями найбільший елемент з поточним елементом на початку масиву. Лекція 12 Перелічувальний тип Перелічувальний тип Перелічувальний тип – це не стандартний тип, а тип визначений програмістом. Перелічувальний тип підвищує наочність програми. Структура перелічувального типу Перелічувальний тип визначається, як впорядкований набір ідентифікаторів, заданих у вигляді списку. Список розташовується у круглих дужках, а ідентифікатори відокремлюються один від одного комами. Визначення значень перелічувального типу Для будь-якого перелічувального типу, що визначений за допомогою запису Type T = (p1, p2,…,pn), де T – ідентифікатор типу; p1, p2,…, pn - ідентифікатори значень перелічувального типу. Обмеження на дані перелічувального типу Ідентифікатори сталих перелічуваль-ного типу мають задовольняти наступним умовам: 1) pi pj, якщо ij (неоднаковість); 2) pi <pj, якщо i<j (впорядкованість); 3) значеннями типу T можуть бути тільки p1, p2,…, pn. Приклад даних перелічувального типу Перелічувальний тип colors (кольори) може складатися з ідентифікаторів: red (червоний), blue (блакитний), green (зелений), yellow (жовтий). Приклади об’яви перелічувальних типів У ТП 7.0 об’ява перелічувального типу виглядатиме Type Colors = (red, yellow, blue, green); Days = (Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday); Position = (On, Off); Direction = (Left, Up, Right, Down); Значення змінних перелічувального типу Змінним перелічувального типу можна привласнювати тільки значення ідентифікаторів із списку відповідного перелічувального типу. Приклади значень змінних перелічувального типу Наприклад, задано Type Color=(red, white, green); Traf= (blue, yellow, black); Var sv: Color; cl: Traf; Тоді змінній sv можна надавати лише значення або red, або white, або green, а змінній cl відповідно - або blue, або yellow, або black. Обмеження на значення змінних перелічувального типу У алгоритмічній мові Паскаль не можна використовувати однакові ідентифікатори в якості значень у декількох різних перелічувальних типах. Приклад використання однакових ідентифікаторів у різних перелічувальних типах Наприклад, задано Type Color=(red, white, green); Traf= (blue, yellow, red); Два різні перелічувальні типи Color і Traf використовують однакову сталу red. У цьому випадку важко,буде визначити до якого з типів вона належить. Операції відношення Операції відношення можна застовувати до змінних перелічувального типу, за умови, що обидва операнди операції відношення належать до одного і того ж перелічувальному типу. Стандартні функції Succ(х) і Pred(х) Функція Succ(х) повертає наступний за символом х символ, а Pred(х) – символ, що передує символу х. Наприклад, Type Colors = (red, yellow, blue, green); Succ(red)= yellow, а Pred(blue)= yellow. Стандартна функція Ord(х) Функція Ord(х) визначає порядковий номер значення перелічувального типу у списку відповідного типу. Необхідно пам’ятати, що нумерація значень перелічувального типу починається з нуля. Приклади використання стандартної функції Ord(х) Type Color=(red, white, green); Traf= (gray, yellow, blue); Так для визначених вище типів: ORD (red)=0 і ORD (gray)=0, а ORD (white)=1 і ORD (yellow)=1 і т.д. Приклад 12.1. Використання даних перелічувального типу Program prim12_1; Type Color=(red, white, green); Days = (Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday); Position = (On, Off); Direction = (Left, Up, Right, Down); Var d1: days; pos1: position; dir: Direction; x,y: integer; sex:(male, female); Begin For d1:= Monday to Sunday do If (d1= Saturday) or (d1= Sunday) then writeln(‘Vyhidnyj’) Else writeln(‘robochyj’); If dir= Left then x:=x-1; If dir= Right then x:=x+1; If dir= Up then y:=y+1; If dir:= Down then y:=y-1; End.
Дата добавления: 2014-01-07; Просмотров: 278; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |