Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабы_Информатика.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
1.79 Mб
Скачать

Задание

Разработать программу, позволяющую выполнять следующие действия.

1. Вычисляет сумму и произведение компонент одномерного вещественного массива 1..4.

2. Вычисляет остаток от деления суммы четных компонент массива на сумму нечетных(массив целых чисел1..6).

3. Вычисляет сумму и произведение элементов квадратной матрицы вещественных чисел 3х3.

4. Заменяет нулями все элементы целочисленной матрицы 3х3, расположенные выше главной диагонали.

5. Вычисляет сумму и произведение элементов главной диагонали этой матрицы.

  1. Определяет, содержится ли в матрице 3х3 типа CHAR литера А.

  2. Вычисляет количество четных элементов целочисленной матрицы размерностью 3х3.

Вычисление величин офрмить ввиде функции. Обработку матицы оформит ввиде процедуры.

Порядок выполнения работы.

Для выполнения первого задания необходимо войти в среду программирования ABC Pascal и в окне редактирования ввести текст программы, произвести ее отладку и выполнение.

Содержание отчета

Отчет оформляется на стандартных листа формата а4, в котором необходимо привести:

  1. Название работы.

  2. Постановку задачи.

  3. Описание алгоритма (метода) решения.

  4. Описание баз данных программы.

  5. Текст программы.

  6. Файл исходной матрицы.

  7. Файл преобразованной матрицы.

  8. Результаты работы программы на 2–3 контрольных примерах.

Контрольные вопросы

МИНОБРНАУКИ РОССИИ

Федеральное государственное бюджетное образовательное учреждение

высшего профессионального образования

«Тульский государственный университет»

Институт высокоточных систем им. В.П. Грязева

Кафедра Системы автоматического управления

Методические указания к лабораторной работе № 10

СТРУКТУРИРОВАННЫЕ ТИПЫ ДАННЫХ. СТРОКИ.

по дисциплине

ИНФОРМАТИКА

Направление подготовки (специальность):

161101 Системы управления летательными аппаратами

Профиль подготовки (специализация): Системы управления движением летательных аппаратов

Квалификация (степень) выпускника: специалист

Форма обучения: очная

Тула 2011 г.

Цель и задачи работы: ознакомиться с работой со строками.

Теоретические сведения

Строковый тип данных обобщает понятие символьных массивов (array [1..N] of char} за счет обеспечения возможности динамического изменения длины символьной строки. В определении строкового типа данных использует- ся служебное слова string, за которым в квадратных скобках указывается мак­симальная длина строки. Например: var

line: string[80];

Строковая переменная line может иметь в качестве своего значения лю­бую последовательность символов, длина которой лежит в диапазоне от 0 до 80 символов. Нулевой байт строки содержит значение текущей длины строки. Для вычисления этого значения необходимо использовать стандартную функцию length(line). Максимальная дина символьной строки, определенная в Турбо-Паскале, равна 255 символам (и используется по умолчанию). Доступ к отдель­ным элементам строки производится аналогично доступу к элементам одно­мерного символьного массива.

Функции работы со строками

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

  • Функция Length (str: string) : integer - возвращает реальный размер строки str в байтах. Для строки 'Всякий бутерброд норовит шлепнуться маслом вниз' эта функция вернет значение 48.

  • Функция Copy (str: string; index, count: integer) : string - возвращает подстроку строки str из count символов начиная с index. Например, вызов Copy(str,10,20) для str из предыдущего примера эта функция вернет 'терброд норовит шлеп'.

  • Функция Concat (s1, s2, :) : string - последовательно соединяет строки s1, s2: в единую строку.

  • Процедура Delete (var str: string; index, count: integer) - удаляет count символов начиная с позиции index из строки str. Например, если исходная строка имеет вид 'И только кошка гуляет сама по себе:', то вызов Delete(str2,10,20) преобразует ее в 'И только себе:'.

  • Процедура Insert (source: string; var str: string; index: integer) - вставляет подстроку source в строку str начиная с позиции index. Например, в строку str='Казнить нельзя помиловать' можно вставить строку substr=',' двумя способами: Insert(substr, str, 8) или Insert(substr, str, 15).

  • Функция Pos (substr, str: string) : byte - возвращает позицию первого символа подстроки substr в строке str. Если такой подстроки в str нет, возвращает нуль.

  • Кроме того нужно упомянуть функцию UpCase (ch: char) : char, которая возвращает символ в верхнем регистре (прописную букву). Правда, эта функция, к сожалению, работает только с символами в диапазоне ['a'..'z'].

Задача. Определить переменную строкового типа st, присвоить этой переменной или ввести с клавиатуры следующий текст "Студенты факультета ТДО". Посчитать сколько раз в тексте встречаются буквы "д" и "т". program count; st: string[80]; {строковая переменная} i, count_t, count_d: byte; {параметр цикла, счетчики букв] begin

writeln('введите текст: '); readln(st); count_d:=0; count_t:=0; for i:=l to length(st) do if(st[i]= 'Д') or (st[i]= 'd') then count_d:=count_d+l

else if(st[i]= 'T') or (st[i]= 'm') then count_t:=count_t+l; writeln('6yKe -d ', count_d:2); writeln('6yKe -m ', count_t:2) end.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]