
- •1. Лабораторная работа №1
- •1.1. Теоретическая часть
- •1.1.1. Системы счисления
- •1.1.2. Двоичная система счисления.
- •1.1.3. Восьмеричная система счисления.
- •1.1.4. Шестнадцатеричная система счисления.
- •1.2. Практическая часть
- •1.3 Контрольные вопросы и практические задания:
- •2. Лабораторная работа №2
- •2.1. Теоретическая часть
- •2.2. Практическая часть
- •2.2.1 Требования к выполнению работы:
- •2.2.2 Варианты индивидуальных заданий.
- •2.3 Контрольные вопросы и практические задания:
- •3. Лабораторная работа №3
- •3.1. Теоретическая часть
- •3.1.1. Условный оператор.
- •3.2. Практическая часть
- •3.2.1 Требования к выполнению работы:
- •3.2.2 Варианты индивидуальных заданий.
- •3.3 Контрольные вопросы и практические задания:
- •4.Лабораторная работа №4
- •4.1. Теоретическая часть
- •4.1.1. Циклические алгоритмы.
- •1. Цикл со счетчиком.
- •4.2. Практическая часть
- •4.2.1 Требования к выполнению работы:
- •4.2.2 Варианты индивидуальных заданий.
- •4.3 Контрольные вопросы и практические задания:
- •5. Лабораторная работа №5
- •5.1. Теоретическая часть
- •5.2. Практическая часть
- •5.2.1 Требования к выполнению работы:
- •5.2.2 Варианты индивидуальных заданий.
- •5.3 Контрольные вопросы и практические задания:
- •6. Лабораторная работа №6
- •6.1. Теоретическая часть
- •6.1.1 Основные алгоритмы преобразования одномерных массивов.
- •6.2. Практическая часть
- •6.2.1 Требования к выполнению работы:
- •6.2.2 Варианты индивидуальных заданий.
- •6.3 Контрольные вопросы и практические задания:
- •7. Лабораторная работа №7
- •7.1. Теоретическая часть
- •7.1.3. Основные алгоритмы обработки двумерных массивов.
- •7.2. Практическая часть
- •7.2.1 Требования к выполнению работы:
- •7.2.2 Варианты индивидуальных заданий.
- •7.3 Контрольные вопросы и практические задания:
- •8.Лабораторная работа №8
- •8.1. Теоретическая часть
- •8.2. Практическая часть
- •8.2.1 Требования к выполнению работы:
- •8.2.2 Варианты индивидуальных заданий.
1.3 Контрольные вопросы и практические задания:
1. Чем отличаются непозиционные системы счисления от позиционных?
2. Алгоритм перевода чисел из десятичной системы счисления в двоичную и наоборот.
3. Алгоритм перевода чисел из десятичной системы счисления в восьмеричную и наоборот.
4. Алгоритм перевода чисел из десятичной системы счисления в шестнадцатеричную и наоборот.
5. Сложение чисел в двоичной системе.
6. Алгоритм перевода чисел из двоичной системы счисления в шестнадцатеричную и наоборот.
7. Алгоритм перевода чисел из двоичной системы счисления в восьмеричную и наоборот.
8. Сложение чисел в восьмеричной системе.
9. Сложение чисел в шестнадцатеричной системе.
10. Вычитание чисел в двоичной системе.
11. Вычитание чисел в восьмеричной системе.
12. Вычитание чисел в шестнадцатеричной системе.
2. Лабораторная работа №2
“Программирование линейных вычислительных процессов”
Цель работы: освоение составления алгоритмов линейных вычислительных процессов и организации программ с использованием простых операторов.
2.1. Теоретическая часть
Алгоритм линейной структуры является простейшим примером алгоритма. Он применяется для вычислительных процессов, в которых операции выполняются в строго определенной последовательности.
2.1.1 Структура программы и основные операторы языка программирования C++.
Программа на языке C++ состоит из следующих частей: директивы препроцессора, заголовок программы, раздел описаний и операторная часть.
Основные операторы языка С++:
Оператор присваивания:
a=100;(простой)
a=b=c=-0.5;(многоместный)
x+=0.5; (совмещенный)
Оператор безусловного перехода:
goto m10;
m10: операторN;
Составной оператор: группа простых или составных операторов, объединенных операторными скобками { и }.
{оператор1;
оператор2;
}
Оператор вывода.
printf(“управляющая строка”, список вывода);
printf(“%d”,b);
printf(“\nx=%4d \ny=%6.2f”,x,y);
Список вывода содержит имена тех переменных, значения которых будут выводиться на экран. Каждому имени переменной в списке вывода должна соответствовать форматная спецификация заданного типа.
Управляющая строка определяет форму вывода информации и может включать в себя поясняющий текст, форматные спецификации и символ перевода строки.
Форматные спецификации содержат знак % и символ, соответствующий типу вводимой информации:
Для вывода данных в конкретном формате в форматной спецификации необходимо указать нужный формат:
– для целых чисел:
%[-][h],
где [-] – выравнивание записи по левому краю,
[h] – число, определяющее количество позиций под переменную.
– для вещественных чисел:
%[-][h][.t],
где [.t] – количество позиций, отводимых под дробную часть.
Операторы ввода данных.
1). Оператор присваивания:
a=17.5;
b=1.4*sin(0.3);
2). Оператор scanf:
scanf(“управляющая строка”, список ввода);
scanf(“%d”,&b);
scanf(“%d%f”,&x,&y);
Список ввода – это список указателей, которые определяют, где будут располагаться введенные данные, поэтому перед именами переменных списков указателей ставится знак &.
2.1.2 Пример составления алгоритма и программы на языке C++ для линейного вычислительного процесса.
Задание:
Составить алгоритм и программу, выполняющую вычисление площади S треугольника с заданными сторонами a, b, c. Значения a, b и c вводятся с клавиатуры, результат вычислений (значение переменной S) выводится на экран.
Решение.
Блок-схема алгоритма для данной задачи выглядит следующим образом:
Программа на языке C++, выполняющая решение данной задачи:
#include <stdio.h>
#include <conio.h>
#include <math.h>
int main()
{
float a,b,c,p,S;
clrscr();
printf(“Введите a, b и c:\n”);
scanf(“%f”,&a);
scanf(“%f”,&b);
scanf(“%f”,&c);
p=(a+b+c)/2;
S=sqrt(p*(p-a)*(p-b)*(p-c));
printf(“\nS = %.2f”,S);
getch();
return 0;
}