КАТЕГОРИИ: Архитектура-(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) |
Методичні рекомендації. Будь-який елемент даних (змінну) необхідно в програмі описати типом змінних
Лабораторна робота № 21-22. Робота в системі Turbo Pascal Типи даних.
1. Типи даних та їх описи. Будь-який елемент даних (змінну) необхідно в програмі описати типом змінних. Тип визначає ту множину значень, які можуть приймати змінні і операції, які можна застосовувати до цих змінних. Крім цього, тип визначає формат представлення даних в пам'яті комп'ютера. Pascal характеризується розгалуженою структурою типів даних, до яких належать: 1) прості (цілі, дійсні, символьні, перераховуванні, діапазон): 2) структуровані (масиви, записи, файли та ін.). Прості типи даних Цілі дані представляються цілими числами зі знаком і без знаку. В залежності від діапазону значень цілі дані можуть бути таких типів: integer - представляє значення цілих в діапазоні -32768 до 32767 (2 байти), byte - числа в діапазоні від 0 до 255 ( 1 байт), word - числав діапазоні від 0 до 65535 (2 байти). Наведемо приклад опису цілочислових змінних: var HI, H2: integer; Над цілими операндами можна виконувати наступні арифметичні операції: додавання, віднімання, множення, ділення. Знаки цих операцій: +, -, *, div. Результат арифметичних операцій над цілими є величиною цілого типу. Результат виконання операції ділення цілих величин є ціла частина частки, наприклад, 17 div 2 = 8, 3 div 5 = 0. До цілочислових даних можна застосувати і стандартні (вбудовані) функції Паскаля: SIN(x), COS(x), LN(x), SQRT(x), але результат уже буде дійсним числом. Дійсні типи. В арифметичних виразах звичайно використовуються змінні, які набувають дійсних значень. Всі дійсні числа можуть зображатися у формі з фіксованою крапкою (наприклад, 0.13, 641.27), із плаваючою крапкою (наприклад, 0.13*10-7). Значення з плаваючою крапкою у мові Pascal записуються у форматі <мантиса>Е<порядок>, наприклад, 0.13Е-7. Для представлення дійсних значень у Pascal частіше всього використовуються типи real та ін. Ці типи розрізняються діапазоном допустимих значень і обсягом необхідної пам'яті: real - числа від 2.9Е-39 до 1.7Е38 з мантисою 11-12 десяткових знаків; надасться 6 байт пам'яті під змінну цього типу. Формат опису дійсних типів має такий вигляд var X: real; Символьний тип. Змінні, які набувають символьних значень з таблиці ASCII належать до символьного типу char. Формат опису символьних змінних має вигляд var WX: char; тоді значення символьних змінних з програмі беруть в лапки: WX =: 'В'. Логічні дані приймають два значення: true (істинно), false (хибно) і можуть бути типів boolean (1 байт) та ін. Опис цих величин у програмі має виглял: var P: boolean; Перелічуваний тип даних визначається шляхом перерахування елементів за такою схемою: type <ім 'я типу> = <(список імен)> Наприклад, type Notation = (do, re, mi, fa, sol, la, si); Тоді при описі змінних типу MyNota використовується тип Notation: var MyNota: Notation; і в програмі змінна MyNota може набувати лише значень з переліченого ряду. Тип діапазон. У деяких випадках зручніше не називати всі значення змінної, а просто зазначити межі інтервалу, у якому вони містяться. Для цього застосовується інтервальний тип даних (тип діапазон), в описі якого указується інтервал від найменшого до найбільшого значення, що розділені двома крапками, наприклад, type El = 100..200; Тоді опис змінних цього типу має вигляд var NІ,N2: ЕІ; Структуровані типи даних Усі розглянуті вище типи (цілий, дійсний, символьний, логічний, перелічуваний, тип діапазон) називаються простими типами. Поряд з простими типами у Паскалі передбачені структуровані типи, в яких дані складаються з компонентів. До структурованих типів належать масиви, записи, файли, рядки та ін. 2. Читання в Паскалі. Процедури читання Read, Readln Для введення даних в програму передбачена процедура Read, формат якої: Read(А, В, С); Дані набираються на клавіатурі, хоча б через один пробіл, в кінці набору натискається Enter. Дані, що вводяться, мають відповідати визначеному для них типу. Якщо ця відповідність порушується, то буде виведено повідомлення про помилку. Дані для оператора Read набираються в одному рядку. Однак у Паскалі передбачене зчитування даних з окремих рядків за допомогою процедури Readln. Кожен оператор Readln починає зчитування з нового рядка на відміну від операторів Read, дані для яких набираються в одному рядку. 3. Складання найпростіших алгоритмів виконання математичних операцій Приклад:
Процедури обчислення математичних функцій
Завдання 1. Скласти програму, яка б додавала, віднімала, множила та ділила два числа. Передбачити вивід результату на екран.
Завдання 2. Скласти програму, яка у діалоговому режимі запропонувала Вам обчислити задану математичну функцію. 1. y = ln ab + c sin2d + 0.5 при а=6.8; b=0.75; c=12; d=342; 2. y = a2+ b2 cos2 с + d при а=14; b=7.75; с=0.8; d=-3.65: 3. у = b2 + с2 +1+ 2.5 • ln ad при а=15.7; b=2; с=0.85; d=7.75; 4. у = а2 + b2 + с + 3d при а=6; b=1.5; с=0.85; d=0.75; 5. у = (а2 + с2)(sind + 3.3b) при а=1.2; b=18; с=0.725; d=15.4; 6. y = (a2 - 1)/(b+1) – (c-2)/cos(d+1.5) при а=3.4; b=25; c= 70.8; d=0.57; 7. у = arctg(a/d) + (b + d)2 при а=75; b=4.5; c=6.2; d=5; 8. y = sin a • ln dc + (b - 1)2 /3 при а=5.5; b=-3.6; c=63; d=0.54; 9. у = b2 + ln c + (d2 - 1)/2a при а=-0.05; b=3.7; c=48; d=15; 10. у = cos(b/a) + 2ad +(c - 1)3 при а=0.75; b=7.7; c=-2.83; d=45; 11. y = 3d2+b • sin(2/(c-d)) при а=2.89; b=18; c=3.75; d=-0.29 12. y = (2a + b)2+ c3/(d -2) npu a=0.83; b=4.2; c=-6.7; d=-1.5 Завдання 3. 1. Складіть програму для обчислення довжини гіпотенузи прямокутного трикутника, якщо відомі довжини його катетів. 2. В одному акваріумі А рибок, а в іншому - на D рибок більше. Складіть програму для обчислення кількості рибок у двох акваріумах разом. 3. Два пішоходи вийшли одночасно в одному напрямку з пунктів А і Б. Перший - зі швидкістю V1 км/год, а другий V2 км/год. Складіть програму для визначення відстані між пішоходами через три години, якщо відстань між пунктами А і Б - 50 км. 4. В одному будинку D квартир, а в іншому - у N разів менше. Скласти програму для визначення кількості квартир у двох будинках разом. 5. Два велосипедисти виїхали одночасно в різних напрямках з пункту N. Перший - зі швидкістю А км/год, а другий - В км/год. Складіть програму для визначення відстані між ними через три години, якщо другий велосипедист останні 20 хв. їхав у зворотному напрямку. 6. В одному класі М хлопчиків, а в іншому - у D разів більше. Скласти програму для знаходження кількості хлопчиків у двох класах разом. 7. Два автомобілі виїхали одночасно в різних напрямках з пункту А. Перший - зі швидкістю V1 км/год., а другий - V2 км/год. Складіть програму для визначення відстані між ними через дві години, якщо перший зробив дві зупинки по 20 хв., а другий - одну десятихвилинну зупинку. 8. В одній роті R солдатів, а в двох разом - S солдатів. Скласти програму для визначення, на скільки солдатів у другій роті більше, ніж у першій. 9. Два автобуси виїхали одночасно в одному напрямку з пункту N. Перший - зі швидкістю А1 км/год., а другий - А2 км/год. Складіть програму для визначення відстані між ними через п'ять годин, якщо перший зробив дві зупинки по 15 хв., а другий шість зупинок по 10 хв. 10. Куплено 10 мішків капусти. В одному – М1 кг, у другому - М2 кг МЗ г, а у всіх інших - по М4 кг М5 г. Складіть програму, що визначає, скільки куплено тонн капусти. 11. У бензобаку автомобіля було V літрів бензину. Після того, як автомобіль тричі з'їздив у пункт А і назад, у бензобаку залишилося М см3 бензину. Складіть програму, яка б визначала відстань до пункту А, якщо витрата бензину складає U літрів на кожні 100 км. 12. Хлопчик поклав у коробку стільки кубиків, скільки їх там вже було, і ще D штук. Після цього в коробці виявилося N кубиків. У скільки разів більше кубиків поклав хлопчик у коробку другого разу, ніж першого?
Завдання 4. 1. Підприємець виготовив К1 одиниць товару першого виду і К2 одиниць товару другого виду собівартістю по D1 і D2 доларів за тисячу одиниць. Від реалізації виготовленого товару він одержав відповідно по Р1 і Р2 гривень за кожну одиницю. Скласти програму для визначення прибутку підприємця, якщо відомо, що U одиниць товару першого виду виявилися бракованими, а курс долара в ці дні складав G гривень С коп. 2.У продавця N ящиків, у кожному з яких по В кг бананів. Визначити, який штраф він сплатить комітету із захисту прав споживачів, якщо він продає банани по С гривень за кілограм і при цьому обважує покупців на G г при зважуванні кожного кілограма, а сума штрафу дорівнює п'ятикратному розміру прибутку, отриманого за рахунок обважування покупців. Складіть програму для визначення результату задачі. 3. Магазин одержав 30 рулонів тканини. 5 рулонів довжиною по Т м, З рулони - по Т1 м 20 см, а всі інші - по Т2 м ТЗ дм. Складіть програму, що визначає, скільки усього метрів тканини одержав магазин. 4. Після того, як автобус виконав сім рейсів по своєму маршруту туди і назад, у нього у бензобаку залишилося М літрів бензину. Визначити, скільки бензину було в бензобаку перед початком першого рейсу, якщо довжина маршруту від однієї кінцевої зупинки до інший R км, а витрата бензину складає U дм3 на кожні 10 км. Складіть програму для розв'язування цієї задачі. 5. На грядці росли тюльпани. Спочатку зрізали К тюльпанів, а потім п'яту частину всіх, що залишилися. Складіть програму для визначення, скільки тюльпанів росло на грядці, якщо залишилося рости Т штук. 6.Продавець одержав макарони за оптовою ціною С гривен за кілограм і повинен продати їх за роздрібною ціною R гривень за кілограм. Макарони були отримані в N коробках. У кожній коробці по U упакувань з макаронами. Вага одного упакування V кг. Однак виявилося, що під час транспортування з кожної коробки зникли по Z упакувань. Визначити, по якій мінімальній ціні (за кілограм) продавець повинен реалізувати макарони, щоб не допустити збитку. Складіть програму для визначення результату задачі. 7. Турист пройшов 8 маршрутів. Три маршрути довжиною по R км, K маршрутів - по R1 км 800 м, а інші по R3 км R2 м. Складіть програму за допомогою якого можна визначити, яку відстань пройшов турист по всіх маршрутах разом. 8. Автомобіль виконав чотири рейси з овочевої бази в магазин. При цьому він перевозив щоразу по М мішків з картоплею. У результаті в магазині виявилося Т тонн картоплі. Визначити місткість одного мішка (у кілограмах), якщо спочатку в магазині залишалося К кг картоплі, а за час перевезень магазин продав Р кг. Складіть програму для розв’язання цієї задачі. 9.У зоопарк привезли В нових мавп. Після того, як через 2 дні третю частину всіх мавп зоопарку перевели в літні вольєри, виявилося, що в літніх вольєрах мавп у К разів більше, ніж їх було у всьому зоопарку до надходження нових. Складіть програму для визначення, скільки в зоопарку було мавп до надходження нових. 10. Студентська їдальня ранком спекла А тістечок. Після того, як на другій перерві продали сьому частину всіх тістечок, що залишилися від продажу на першій перерві, виявилося, що це в N разів більше, ніж було продано на першій перерві. Складіть програму для визначення, скільки тістечок було продано на першій перерві.
Дата добавления: 2015-05-24; Просмотров: 960; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |