- •Предисловие
- •Правила выполнения лабораторных работ
- •Обеспеченность занятия (средства обучения):
- •Порядок выполнения отчета по лабораторной работе
- •Лабораторная работа № 1 «Разработка линейных алгоритмов»
- •Образовательные результаты, заявленные во фгос третьего поколения:
- •Краткие теоретические и учебно-методические материалы по теме лабораторной работы
- •Задания для лабораторной работы:
- •Задания для лабораторной работы:
- •Краткие теоретические и учебно-методические материалы по теме лабораторной работы
- •Контрольные вопросы
- •Лабораторная работа № 3-4 «Использование оператора цикла с параметром»
- •Образовательные результаты, заявленные во фгос третьего поколения:
- •Краткие теоретические и учебно-методические материалы по теме лабораторной работы
- •Задания для лабораторной работы:
- •Контрольные вопросы
- •Лабораторная работа № 5 «Табулирование функций»
- •Образовательные результаты, заявленные во фгос третьего поколения:
- •Краткие теоретические и учебно-методические материалы по теме лабораторной работы
- •Задания для лабораторной работы:
- •Краткие теоретические и учебно-методические материалы по теме лабораторной работы
- •Задания для лабораторной работы:
- •Краткие теоретические и учебно-методические материалы по теме лабораторной работы
- •Задания для лабораторной работы:
- •Краткие теоретические и учебно-методические материалы по теме лабораторной работы
- •Задания для лабораторной работы:
- •Контрольные вопросы:
- •Лабораторная работа № 11-12 «Разработка технического задания с использованием ms Word»
- •Образовательные результаты, заявленные во фгос третьего поколения:
- •Краткие теоретические и учебно-методические материалы по теме лабораторной работы
- •1 Общие сведения
- •1.1. Полное наименование системы и ее условное обозначение
- •1.3. Термины и определения
- •3.1.4. Безопасность системы
- •3.1.5. Требования по эргономике и технической эстетике
- •3.1.6. Требования к производительности системы
- •3.2. Общие требования к функциям системы
- •3.2.1. Общие требования к способам обработки и хранения информации
- •Краткие теоретические и учебно-методические материалы по теме лабораторной работы
- •Задания для лабораторной работы:
- •Контрольные вопросы:
- •Лабораторная работа № 15-16 «Использование многомерных массивов»
- •Образовательные результаты, заявленные во фгос третьего поколения:
- •Краткие теоретические и учебно-методические материалы по теме лабораторной работы
- •Задания для лабораторной работы:
- •Контрольные вопросы:
- •Лабораторная работа № 17 «Использование оператора выбора switch-case-default»
- •Образовательные результаты, заявленные во фгос третьего поколения:
- •Краткие теоретические и учебно-методические материалы по теме лабораторной работы
- •Краткие теоретические и учебно-методические материалы по теме лабораторной работы
- •Задания для лабораторной работы:
- •Краткие теоретические и учебно-методические материалы по теме лабораторной работы
- •Задания для лабораторной работы:
- •Контрольные вопросы:
- •Лабораторная работа № 21 «Разработка программного кода методом половинного деления»
- •Образовательные результаты, заявленные во фгос третьего поколения:
- •Краткие теоретические и учебно-методические материалы по теме лабораторной работы
- •Задания для лабораторной работы:
- •Краткие теоретические и учебно-методические материалы по теме лабораторной работы
- •Задания для лабораторной работы:
- •Краткие теоретические и учебно-методические материалы по теме лабораторной работы
- •Задания для лабораторной работы:
- •9: Разложение на множители
- •10: Палиндром
- •11: Вывести нечетные числа последовательности
- •Контрольные вопросы:
- •Лабораторная работа № 26-27 «Обработка структурных данных»
- •Образовательные результаты, заявленные во фгос третьего поколения:
- •Краткие теоретические и учебно-методические материалы по теме лабораторной работы
- •Задания для лабораторной работы:
- •Контрольные вопросы:
- •Лабораторная работа № 28-29 «Использование файловых потоков»
- •Образовательные результаты, заявленные во фгос третьего поколения:
- •Краткие теоретические и учебно-методические материалы по теме лабораторной работы
- •Задания для лабораторной работы:
- •Контрольные вопросы:
- •Лабораторная работа № 30-31 «Использование строк при разработке программного кода»
- •Образовательные результаты, заявленные во фгос третьего поколения:
- •Краткие теоретические и учебно-методические материалы по теме лабораторной работы
- •Задания для лабораторной работы:
- •Контрольные вопросы:
- •Лабораторная работа № 32-33 «Использование динамических массивов структур»
- •Список представляет собой таблицу
- •Задания для лабораторной работы:
- •Краткие теоретические и учебно-методические материалы по теме лабораторной работы
- •Список представляет собой таблицу
- •Задания для лабораторной работы:
- •Контрольные вопросы:
- •Лабораторная работа № 36-37 «Использование классов динамических массивов структур»
- •Образовательные результаты, заявленные во фгос третьего поколения:
- •Краткие теоретические и учебно-методические материалы по теме лабораторной работы
- •Список представляет собой таблицу
- •Краткие теоретические и учебно-методические материалы по теме лабораторной работы
- •Задания для лабораторной работы:
- •Контрольные вопросы:
Краткие теоретические и учебно-методические материалы по теме лабораторной работы
Целые данные являются наиболее часто встречаемым типом данных. Большинство машинных команд ПЭВМ ориентированны на обработку целых данных.
В языке Си к целым типам относятся типы char и int. Любой символ в компьютере связан с целым числом – кодом этого символа, например в таблице ASCII. Сам символ необходим, когда информация выводится на экран или на принтер или, наоборот, вводится с клавиатуры. Подобные преобразования символа в код и наоборот производятся автоматически. Тип char по умолчанию является знаковым типом. Тип int всегда знаковый.
В стандарте ANSI языка Си имеются модификаторы
signed – знаковый,
unsigned – беззнаковый,
long – длинный,
short – короткий.
Модификаторы ставятся перед соответствующим типом и, в результате, получаются новые типы данных. Модификаторы signed и unsigned могут применятся к типам char и int. Модификаторы short и long могут применятся к типу int. Модификаторы signed и unsigned могут комбинироваться с модификаторами short и long в применении к типу int.
В следующей таблице приведены все возможные целые типы данных с различными комбинациями модификаторов, использующиеся в языке Си. Размер в байтах и интервал изменения могут варьироваться в зависимости от компилятора, процессора и операционной системы (среды).
При внимательном рассмотрении этой таблицы можно заметить, что типы int, short int, signed int и signed short int имеют одни и те же пределы изменения. Эти типы, хотя и имеют разные названия, являются совершенно одинаковыми в данной реализации компилятора языка. Типы int и signed int всегда обозначают один и тот же тип, так как тип int всегда знаковый и без модификатора signed. Модификатор short в данной реализации не оказывает никакого воздействия на тип.
Таблица 1 – размеры типов данных
Тип |
Размер в байтах (битах) |
Интервал изменения |
char unsigned char signed char int unsigned int signed int short int unsigned short int signed short int long int signed long int unsigned long int |
2 (16) 2 (16) 2 (16) 2 (16) 4 (32) 4 (32) 4 (32) |
от –128 до 127 от 0 до 255 от –128 до 127 от –32768 до 32767 от 0 до 65535 от –32768 до 32767 от –32768 до 32767 от 0 до 65535 от –32768 до 32767 от –2147483648 до 2147483647 от –2147483648 до 2147483647 от 0 до 4294967295 |
При вводе и выводе целых данных используются следующие спецификаторы:
%c – символ,
%d – целое десятичное число,
%i – целое десятичное число,
%o – восьмеричное число,
%u – беззнаковое десятичное число,
%x – шестнадцатеричное число,
%ld – целое типа long int.
При работе с целыми данными нередко приходится иметь дело с операциями mod – остаток от деления нацело, и с div частное от деления нацело. Эти операции определяются как
a div b = [ a / b ]
a mod b = a - b * [a / b ] , где [x] - целая часть числа х.
Например:
11 div 4 = [2.75] = 2 11 mod 4 = 11 – 4*2 = 3
(-11) div 4 = [-2.75] = -2 (-11) mod 4 = (-11) – 4*(-2) = -3
11 div (-4) = [-2.75] = -2 11 mod (-4) = 11 – (-4)*(-2) = 3
(-11) div (-4) = [2.75] = 2 (-11) mod (-4) = (-11) – (-4)*2 = -3
Результат деления нацело по знаку положителен, если оба операнда одного знака, и отрицателен, если операнды разного знака. Это аналогично обычному делению. Остаток же от деления нацело, если не равен нулю, по знаку совпадает с делимым. Делить на нуль нельзя, т.е. в a/b, a div b, a mod b предполагается, что b0.
В языке Си операция mod обозначается %, т.е. a mod b записывается как a%b. Эта операция определена только для целых a, b. Специального символа для обозначения операции div в языке Си нет. Операция a div b в языке Си реализуется как a/b, где a и b – целые данные. Дело в том, что в языке Си операция деления ( / ) для целых операндов вычисляет частное от деления нацело. Если же хотя бы один операнд вещественный, то это будет обычная операция деления.
Пример:
Вычислить сумму цифр числа n.
# include<stdio.h>
main( )
{
long int n;
int S;
scanf("%ld",&n);
if (n < 0) n = -n;
S = 0;
while(n! = 0)
{ S = S + n%10;
n = n / 10;}
printf("Сумма цифр = %d",S);}
