АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Структуровані типи даних

Читайте также:
  1. Аналіз даних засобами Excel
  2. Аналіз систематизованих та згрупованих статистичних даних
  3. БУХГАЛТЕРСЬКИХ ДАНИХ)
  4. Вправа 18. Знайдіть у тексті переклад поданих словосполучень.
  5. Вправа 18. Знайдіть у тексті переклад поданих словосполучень.
  6. Вправа 18. Знайдіть у тексті переклад поданих словосполучень.
  7. Див. Приклад вирішення задачі на сторінці 27 даних Методичних рекомендацій.
  8. Діаграма потоків даних
  9. Документальне оформлення обліку витрат і наданих послуг машино-тракторним парком.
  10. Огляд сучасних напрямків розвитків розвитку баз даних та типи моделей даних
  11. Оголошення показань, наданих учасниками допиту на попередніх допитах, дозволяється лише після дачі ними показань.
  12. ОДНА ПРАВИЛЬНА ВІДПОВІДЬ. Яка мета порівняння фактичних даних з даними минулих періодів?

Структуровані типи даних визначають упорядковану сукупність скалярних змінних і характеризуються типом своїх компонентів. Структуровані типи даних на відміну від простих задають безлічі складних значень з одним загальним ім'ям. Можна сказати, що структурні типи визначають певний спосіб утворення нових типів з вже наявних.

Існує кілька методів структурування. За способом організації і типом компонентів у складних типах даних виділяють наступні різновиди: регулярний тип (масиви); комбінований тип (записи); файловий тип (файли); множинний тип (множини); рядковий тип (рядки); в мові Турбо Паскаль версії 6.0 і старше введений об'єктний тип (об'єкти).

На відміну від простих типів даних, дані структурованого типу характеризуються множинністю які складають цей тип елементів, тобто змінна або константа структурованого типу завжди має кілька компонентів. Кожен компонент у свою чергу може належати структурованому типу, тобто можлива вкладеність типів.

Всі структуровані типи даних вимагають окремого розгляду і будуть докладно вивчені нами в подальшому, а сьогодні ми тільки їх визначимо.

Рядки

Рядок (string) - це послідовність символів кодової таблиці персонального комп'ютера.

Кількість символів у рядку може змінюватися від 0 до 255.

Масиви

Прості типи визначають різні множини нероздільних значень. На відміну від них структуровані типи задають безлічі складних значень, кожне з яких утворює сукупність кількох значень іншого типу. У структурних типах виділяють регулярний тип (масиви - array). Назва регулярний тип (або ряди) масиви отримали за те, що в них об'єднані однотипні елементи, впорядковані (врегульовані) за індексами, що визначає положення кожного елемента в масиві.

Множини

Безліч (set) - це структурований тип даних, який представляє собою набір взаємозалежних за будь-якою ознакою або групу ознак об'єктів, які можна розглядати як єдине ціле. Кожен об'єкт в безлічі називається елементом множини. Всі елементи множини повинні належати одному з скалярних типів, крім речовинного.

Записи

Для запису комбінації об'єктів різних типів у Паскалі застосовується комбінований тип даних - запис (record). Наприклад, товар на складі описується такими величинами: найменування, кількість, ціна, наявність сертифіката якості і т.д. У цьому прикладі найменування - величина типу string, кількість - integer, ціна - real, наявність сертифікату - boolean.

Запис являє собою найбільш загальний і гнучкий структурований тип даних, так як вона може бути утворена з неоднотипними компонентів і в ній явно виражена зв'язок між елементами даних, що характеризують реальний об'єкт.

Файли

Великі сукупності даних зручно мати записаними у зовнішній пам'яті у вигляді послідовності сигналів. У Паскалі для цих цілей передбачені спеціальні об'єкти - файли (file). Файлом називається сукупність даних, записана у зовнішній пам'яті під певним ім'ям. Розглянь завдання на оголошення змінних і констант скалярного типу. Приступаючи до вирішення завдань на оголошення даних скалярного типу, слід пам'ятати, що:

кожна змінна програми повинна бути оголошена;

оголошення змінних поміщають в розділ, який починається словом var; константи поміщають в розділ, який починається словом const; змінні для користувача типів (перераховуються та інтервальні) оголошують за особливою схемою; В імені змінної можна використовувати букви латинського алфавіту і цифри (першим символом повинна бути буква);

після інструкції оголошення даних рекомендується вказувати призначення змінної або константи;

інструкція оголошення констант виглядає так: ІмяКонстанти = значення константи;


Розділ 1 Стандартні типи даних

1.1. Числові типи даних

1.1. Записать на Паскале следующие числа (в дробной части указывать до 4 цифр):

а) ; б)LXIV; в) 6,38;

г) -0,7(4); д) 11/4; е) -1/6;

ж) ; з) ; и) ;

к) ; л) ; м)1/100000.

1.2*. записать следующие числа без десятичного порядка:

а) ; б) ; в) .

1.3*. Указать неправильные записи чисел:

а) 0006; б)-0; в) 7,0; г)7.;

д) +0.3; е).3; ж) 2/3; з) ;

и) ; к) ; л) ; м) .

1.4. Есть ли разница (с точки зрения языка Паскаль) между числами 100 и 100.0 между 20 и ? По какому признаку (величине или форме записи) целые числа отличаются от вещественных?

1.5. Привести примеры положительного и отрицательного целых чисел, не представимых в Паскале.

1.6*. Можно ли утверждать, что в Паскале значение выражения равно нулю?

1.7. Почему при записи формул на Паскале их «вытягивают» в линию? Почему знак умножения всегда выписывают явно (например, пишут , а не )?

1.8*. Записать на Паскале следующие формулы:

а) ; б) ;

в) ; г) ;

д) ; е) .

1.9*.Записать в общепринятой форме:

а) ;

б) .

1.10*. Вычислить: .

1.11. Почему в Паскале факториал от 10 нельзя записать в виде или ?

1.12*. Сколько операций выполняется при вычислении выражения ?

Как сократить число операций?

1.13. Почему в Паскале аргумент функции всегда записывают в скобках (например, пишут , а не )?

1.14. Записать на Паскале следующие формулы:

а) ; б)* ; в) ;

г) ; д)* ; е) ;

ж)* ; з) ; и) ;

к)* .

1.15. Записать на Паскале следующие формулы :

а)* ; б)* ; в) ; г) ;

д)* ; е) ; ж) ; з)* .

1.16*. Как записать на Паскале величину основания натуральных логарифмов (число ), если Вы забыли цифры этого числа? А как записать число в подобной ситуации?

1.17*. Как на Паскале записать синус от градусов?

1.18. Записать на Паскале следующие формулы:

а) ; б) ; в) .

1.19. Записать в общепринятой форме:

а) ;

б) ;

в) .

1.20. Записать на Паскале соответствующие операторы присваивания:

а)* ;

б) ;

в) .

1.21. Записать операторы присваивания, которые переменной присваивают:

а) среднее арифметическое чисел ;

б)* расстояние между точками с координатами и ;

в) корень уравнения ;

г)* площадь треугольника со сторонами .

1.22. Какое значение будет иметь переменная после выполнения операторов ?

1.23. Записать оператор присваивания, который меняет знак у значения переменной .

1.24. Чему равны значения переменных после выполнения операторов ?

1.25*. Поменять местами значения переменных и .

1.26. Поменять местами значения переменных и так, чтобы в оказалось значение переменной , в - значение переменной , а в - прежнее значение переменной .

1.27*. Вычислить значения выражений:

а) ; б) ; в) ; г) ;

д) ; е) ; ж) ; з) .

1.28*. Переменной присвоить дробную часть положительного числа .

1.29*. Вычислить значения выражений:

а) ; б) ; в) ; г) ;

д) ; е) ; ж) ; з) .

1.30. Определить операцию через другие операции и стандартные функции.

1.31*. Указать порядок выполнения операций в выражении .

1.32. Вычислить значения выражений:

а) ; б)* .

1.33*. Определить тип (целый и вещественный) выражения:

а) ; б) ; в) г) ;

д) ; е) ; ж) ; з) .

1.34. В языке Паскаль значением вещественной переменной (скажем, ) может быть только вещественное число и в то же время допускается оператор присваивания, который вещественной переменной присваивает целое число (например, ). Как в языке устраняется это противоречие?

1.35*. Если - вещественная переменная, целая, то какие из следующих операторов присваивания правильные, а какие нет и почему?

а) ; б) ; в) ; г) ;

д) ; е) ; ж) ; з) .

1.36. Правильны ли следующие операторы присваивания? Ответ обосновать.

а)* ; б) .

1.37*. Присвоить целой переменной третью от конца цифру в записи положительного целого числа (например, если , то )

1.38. Присвоить целой переменной первую цифру из дробной части положительного вещественного числа (так, если , то ).

1.39. Целой переменной присвоить сумму цифр трехзначного целого числа .

1.40. Идет -я секунда суток. Определить, сколько полных часов () и полных минут прошло к этому моменту (например, , если )

1.41. Определить - угол (в градусах) между положением часовой стрелки в начале суток ее положением в часов, минут и секунд (, , ).

1.42. Определить – полное количество часов и - полное количество минут, прошедших от начала суток до того момента (в первой половине дня), когда часовая стрелка повернулась на градусов (, - вещественное число).

1.43. Пусть – целое от 1 до 365. Присвоить целой переменной значение 1, 2,…,6 или 7 в зависимости от того, на какой день недели (понедельник, вторник, …, субботу или воскресенье) приходится – й день невисокосного года, в котором 1 января – понедельник.

1.44. Поменять местами значения целых переменных и , не используя дополнительные переменные.

 


1.1 *. Записати на Паскалі наступні числа (в дробовій частині вказувати до 4 цифр):

а) ; б)LXIV; в) 6,38;

г) -0,7(4); д) 11/4; е) -1/6;

ж) ; з) ; и) ;

к) ; л) ; м)1/100000.

1.2 *. Записати наступні числа без десяткового порядку:

а) ; б) ; в) .

1.3 *. Вказати неправильні записи чисел:

а) 0006; б)-0; в) 7,0; г)7.;

д) +0.3; е).3; ж) 2/3; з) ;

и) ; к) ; л) ; м) .

1.4. Чи є різниця (з точки зору мови Паскаль) між числами 100 і 100.0, між 20 і ? За якою ознакою (величині або формі запису) цілі числа відрізняються від дійсних?

1.5. Навести приклади позитивного і негативного цілих чисел, що не представлені у Паскалі.

1.6 *. Чи можна стверджувати, що в Паскалі значення виразу дорівнює нулю?

1.7. Чому при записі формул на Паскалі їх «витягують» в лінію? Чому знак множення завжди записують явно (наприклад, пишуть , а не )?

1.8 *. Записати на Паскалі такі формули:

а) ; б) ; в) ;

г) ; д) ; е) .

1.9 *. Записати у загальноприйнятій формі:

а) ;

б) .

1.10 *. Обчислити: .

1.11. Чому в Паскалі факторіал від 10 не можна записати у вигляді чи ?

1.12 *. Скільки операцій виконується при обчисленні виразу ? Як скоротити кількість операцій?

1.13. Чому на Паскалі аргумент функції завжди записують у дужках (наприклад, пишуть а не )?

1.14. Записати на Паскалі наступні формули:

а) ; б)* ; в) ;

г) ; д)* ; е) ;

ж)* ; з) ; и) ;

к)* .

1.15. Записати на Паскалі наступні формули :

а)* ; б)* ; в) ; г) ;

д)* ; е) ; ж) ; з)* .

1.16 *. Як записати в Паскалі величину основи натуральних логарифмів (число ), якщо Ви забули цифри цього числа? А як записати число в подібній ситуації?

1.17 *. Як на Паскалі записати синус від градусів?

1.18. Записати на Паскалі наступні формули:

а) ; б) ; в) .

1.19. Записати у загальноприйнятій формі:

а) ;

б) ;

в) .

1.20. Записати на Паскалі відповідні оператори присвоєння:

а)* ;

б) ;

в) .

1.21. Записати оператори присвоювання, які змінній присвоюють:

а) середнє арифметичне чисел ;;

б) * відстань між точками з координатами і ;

в) корінь рівняння ;

г) * площа трикутника зі сторонами .

1.22. Яке значення буде мати змінна після виконання операторів ?

1.23. Записати оператор присвоювання, який змінює знак у значенню змінної .

1.24. Чому дорівнюють значення змінних після виконання операторів ?

1.25 *. Поміняти місцями значення змінних і .

1.26. Поміняти місцями значення змінних і так, щоб у виявилося значення змінної , в - значення змінної , а в - колишнє значення змінної .

1.27 *. Обчислити значення виразів:

а) ; б) ; в) ; г) ;

д) ; е) ; ж) ; з) .

1.28 *. Змінній присвоїти дробову частину позитивного числа .

1.29 *. Обчислити значення виразів:

а) ; б) ; в) ; г) ;

д) ; е) ; ж) ; з) .

1.30. Визначити операцію через інші операції і стандартні функції.

1.31 *. Вказати порядок виконання операцій у виразі .

1.32. Обчислити значення виразів:

а) ;

б)* .

1.33 *. Визначити тип (цілий і дійсний) виразу:

а) ; б) ; в) г) ;

д) ; е) ; ж) ; з) .

1.34. На мові Паскаль значенням змінної (скажімо ) може бути тільки дійсне число і в той же час допускається оператор присвоювання, який дійсній змінній присвоює ціле число (наприклад ). Як у мові усувається це протиріччя?

1.35 *. Якщо - дійсна змінна, ціла, то які з наступних операторів присвоювання правильні, а які ні і чому?

а) ; б) ; в) ; г) ;

д) ; е) ; ж) ; з) .

1.36. Чи правильні такі оператори присвоювання? Відповідь обгрунтувати.

а)* ; б) .

1.37 *. Присвоїти цілій змінній третю від кінця цифру в записі позитивного цілого числа (наприклад, якщо , то )

1.38. Присвоїти цілій змінній першу цифру з дробової частини позитивного дійсного числа (так, якщо , то ).

1.39. Цілій змінній присвоїти суму цифр трьохзначного цілого числа .

1.40. Йде -а секунда доби. Визначити, скільки повних годин () і повних хвилин пройшло до цього моменту (наприклад, , якщо )

1.41. Визначити - кут (у градусах) між положенням годинникової стрілки на початку доби її положенням у годин, хвилин і секунд (, , ).

1.42. Визначити - повна кількість годин і - повна кількість хвилин, що пройшли від початку доби до того моменту (у першій половині дня), коли годинникова стрілка повернулась на градусів (, - дійсне число).

1.43. Нехай - ціле від 1 до 365. Присвоїти цілій змінній значення 1, 2,..., 6 або 7 в залежності від того, на який день тижня (понеділок, вівторок,..., суботу чи неділю) доводиться - й день невисокосного року, в якому 1 січня - понеділок.

1.44. Поміняти місцями значення цілих змінних і , не використовуючи додаткові змінної.


 


1 | 2 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.032 сек.)