Арифметические операции в 2-ичой, 8-ичной, 16-ичной системах счисления

Цель: ознакомиться с табличным процессором MS Ecxel; закрепить работу с таблицами и формулами в табличном процессоре.

Оборудование: ПК;

ПО: ОС Windows, Microsoft Excel.

Ход работы:

  1. Запустить программу Калькулятор.
  2. Перевести выключатель в положение Bin. Выполнить сложение чисел 10102 и 102. Записать результат в созданный документ.
  3. Выполнить перевод чисел 10102 и 102 в десятичную систему счисления, проверить результат сложения.
  4. Аналогично выполнить вычитание, умножение и деление чисел 10102 и 102. Результаты также записать в созданный документ.

10102 + 102 =

10102 - 102 =

10102 * 102 =

10102 : 102 =

  1. Перевести переключатель в положение Oct. Аналогичные операции выполнить с числами 1248 и 148.
  2. Перевести выключатель в положение Nex. Аналогичные операции выполнить с числами 3У816 и 6416.

Лабораторная работа №3

Арифметические и логические основы работы компьютера.

Цель: ознакомиться с табличным процессором MS Ecxel; закрепить работу с таблицами и формулами в табличном процессоре.

Оборудование: ПК;

ПО: ОС Windows, Microsoft Excel.

Ход работы:

Вариант 1.

Цель работы: научиться составлять таблицы истинности для логических формул и упрощать их используя законы алгебры логики.

1. Логические основы устройства компьютера (кратко описать данную тему; объем информации по теме не более одной страницы).

2. Укажите, какие из высказываний истинны, какие – ложны, а какие относятся к числу тех, истинность которых трудно или невозможно установить: а) «прямая — это геометрическая фигура, которая не имеет начало, но не имеет конца.»; б) «биссектриса угла называется луч, который исходит из вершины угла и делит угол на две равные части».

3. Постройте таблицу истинности для логической формулы, и упростите ее используя законы алгебры логики: (a^b^c)v(a^b^c).

Вариант 2.

Цель работы: научиться составлять таблицы истинности для логических формул и упрощать их используя законы алгебры логики.

1. Логические основы устройства компьютера (кратко описать данную тему; объем информации по теме не более одной страницы).

2. Укажите, какие из высказываний истинны, какие – ложны, а какие относятся к числу тех, истинность которых трудно или невозможно установить: а) «Биссектриса внутреннего угла треугольника делит противоположную сторону в отношении, равном отношению двух прилежащих сторон»; б) «прямая – это геометрическая фигура, которая имеет и начадо и конец».

3. Постройте таблицу истинности для логической формулы, и упростите ее используя законы алгебры логики: (a^b^c)v(a^b^c).

Вариант 3.

Цель работы: научиться составлять таблицы истинности для логических формул и упрощать их используя законы алгебры логики.

1. Логические основы устройства компьютера (кратко описать данную тему; объем информации по теме не более одной страницы).

2. Укажите, какие из высказываний истинны, какие – ложны, а какие относятся к числу тех, истинность которых трудно или невозможно установить: а) «параллелограмм – это четырёхугольник с параллельными и равными противоположными сторонами»; б) «трапеция – это четырёхугольник с параллельными сторонами».

3. Постройте таблицу истинности для логической формулы, и упростите ее используя законы алгебры логики: ((a^b^c))v(a^b^c).

Лабораторная работа №3

Построение блок-схем

Цель: ознакомиться с табличным процессором MS Ecxel; закрепить работу с таблицами и формулами в табличном процессоре.

Оборудование: ПК;

ПО: ОС Windows, Microsoft Excel.

Ход работы:

Время выполнения — 2 часа.

Цель работы:

· Познакомиться с графическим способом построения алгоритма.

· Научиться строить блок-схемы .

Средства обеспечения занятия

· Оборудование: ПК;

· Программное обеспечение: OS Windows, Openoffice.org Writer.

Задание

· Выполнить задание в соответствии с установленным порядком;

· Оформить отчет.

Пример 1.Составить программу для решения квадратного уравнения ax2+ bx + c = 0.

Составим алгоритм решения задачи.

Арифметические операции в 2-ичой, 8-ичной, 16-ичной системах счисления - student2.ru

Программа:

PROGRAM kvuravnenie;
VAR a,b,c,D,x,x1,x2:REAL; {описываем переменные}
BEGIN
WRITE(‘a=’); {Вводим с клавиатуры коэффициенты уравнения}
READLN(a);
WRITE(‘b=’);
READLN(b);
WRITE(‘c=’);
READLN(c);
D:= b*b – 4*a*c; {Вычисляем дискриминант}
WRITE (‘Корни уравнения: ‘);
{Вычисляем корни уравнения в зависимости от дискриминанта}
IF D>0 THEN
BEGIN
x1:=(–b+SQRT(D))/(2*a);
x1:=(–b–SQRT(D))/(2*a);
WRITELN (‘x1= ‘,x1:5:2,’x2= ‘,x2:5:2);
END
ELSE
IF D=0 THEN
BEGIN
x:= –b/(2*a);
WRITELN (‘x= ‘,x:5:2);
END
ELSE
WRITELN (‘Корней нет’);
END.

Пример 2.Пример программы с использованием оператора case, которая по введенному номеру дня недели выводит на экран его название на русском языке.

Арифметические операции в 2-ичой, 8-ичной, 16-ичной системах счисления - student2.ru

Program Day_Week;Var Day: byte;Begin Write('Введите номер дня недели: '); Readln(Day); Case Day of {Вычисление значения селектора и выбор} 1: writeln('Понедельник'); 2: writeln('Вторник'); 3: writeln('Среда'); 4: writeln('Четверг'); 5: writeln('Пятница'); 6: writeln('Суббота'); Else 7: writeln('Воскресенье'); End;End.

Пример 3.Вычислить сумму чисел S=1+2+3+…+n.

Арифметические операции в 2-ичой, 8-ичной, 16-ичной системах счисления - student2.ru

Program Summa;Var s,a:integer;I,n: integer;BeginWriteln(' Программа вычисления суммы S=1+2+3…n ');Writeln(' Ввод количества слагаемых ');Write('n = ');Readln(n);S:=0;For i:=1 to n doBeginS:=s+i;Writeln ('i= ',i, ' s= ',s);End;Writeln (' s= ',s);Readln;End.

ВыполнениеВыбрать вариант в соответствии с номером из списка в журнале и построить блок-схему.

Номер (Вариант) Задание
1. Найти сумму первых 10 натуральных чисел. Program Z11; Var N,S: integer; Begin S:=0; For N:=1 to 10 do S:=S+N; Writeln (‘сумма первых 10 натуральных чисел равна ‘, S); End.   2. Упорядочение двух значений по возрастанию Program Z12; Var X,y: integer; V: integer; Begin Write('Введите x,y: '); Readln(x,y); If x>y then Begin V := x; X := y; Y := v End; Writeln('Результат упорядочения по возрастанию: ',x,' ',y); End.
1. Найти сумму любых 10 вещественных чисел, введённых с клавиатуры. Program Z21; Var N,S: real; I: integer; Begin S:=0; For I:=1 to 10 do Begin Write (‘Введите ‘, I , ‘ число’); Readln (N); S:=S+N End; Writeln (‘сумма 10 любых вещественных чисел равна ‘, S); End.   2. Проверка числа на двузначность Program Z22; Var x: integer; Begin Write('Введите x: '); Readln(x); If (x>=10) and (x<=100) then Writeln('Двузначное число') Else writeln('Не двузначное число') End.
1. Найти сумму четных чисел из первых 10 натуральных чисел. Program Z31; Var N,S: integer; Begin S:=0; For N:=1 to 10 do If (N Mod 2)=0 Then S:=S+N; Writeln (‘сумма чётных из первых 10 натуральных чисел равна ‘, S); End.   2. Наименование сезона по номеру месяца Program Z32; Var Month: integer; Season: string; Begin Write('Введите номер месяца: '); Readln(Month); If (Month=1) or (Month=2) or (Month=12) then Season := 'Зима' Else if (Month=3) or (Month=4) or (Month=5) then Season := 'Весна' Else if (Month=6) or (Month=7) or (Month=8) then Season := 'Лето' Else Season := 'Осень'; Writeln('Это ',Season) End.
1. Найти сумму отрицательных из 10 любых вещественных чисел, введённых с клавиатуры. Program Z41; Var N,S: real; I: integer; Begin S:=0; For I:=1 to 10 do Begin Write (‘Введите ‘, I , ‘ число’); Readln (N); If N<0 Then S:=S+N; End; Writeln (‘сумма отрицательных из 10 любых вещественных чисел равна ‘, S); End.   2. Определение того, является ли символ цифрой или буквой Program Z42; Var Symbol: char; Begin Write('Введите символ: '); Readln(Symbol); Case Symbol of 'A'..'z': writeln('Это маленькая английская буква'); 'A'..'Z': writeln('Это большая английская буква'); '0'..'9': writeln('Это цифра'); End; End.
1. Обмен значений двух переменных с использованием третьей Program Z51; Var x,y: real; Begin Write('Введите x,y: '); Readln(x,y); Var v: real; // вспомогательная переменная V := x; X := y; Y := v; Writeln('Новые значения x,y: ',x,' ',y); End. 2. Словесное наименование сезона по номеру месяца Program Z 52; Var Month: integer; Season: string; Begin Write('Введите номер месяца: '); Readln(Month); Case Month of 1,2,12: Season := 'Зима'; 3..5: Season := 'Весна'; 6..8: Season := 'Лето'; 9..11: Season := 'Осень'; Else Season := 'Вы ввели неверный номер месяца'; End; Writeln('Это ',Season) End.
1. Состоит ли двузначное число из одинаковых цифр Program Z61; Var x: integer; Begin Write('Введите двузначное число: '); Readln(x); Var c1 := x div 10; Var c2 := x mod 10; If c1=c2 then Writeln('Цифры числа совпадают') Else writeln('Цифры числа не совпадают'); End. 2. Вычисление n! Program Z62; Var N,fact: integer; I: integer; Begin Write('Введите n (n<=13): '); Readln(n); Fact := 1; For i := 2 to n do Fact := fact * i; Writeln(n,'! = ',fact); End.
1. Определение четности числа Program Z71; Var x: integer; Begin Write('Введите x: '); Readln(x); If x mod 2 = 0 then Writeln('Это четное число') Else writeln('Это нечетное число'); End. 2. Алгоритм Евклида поиска НОД Program Z72; Var a,b,c: integer; Begin Writeln('Введите a,b: '); Read(a,b); While b<>0 do Begin C := a mod b; A := b; B := c; End; Writeln('Наибольший Общий Делитель = ',a); End.
3. Минимум из двух значений Program Z81; Var X,y: integer; Min: integer; Begin Write('Введите x и y: '); Readln(x,y); If x<y then Min := x Else min := y; Writeln('Минимум = ',min); End. 2. Числа Фибоначчи Program Z82; Const n = 25; Var A,b,c: integer; I: integer; Begin A := 1; B := 1; Write(a,' ',b,' '); For i := 3 to n do Begin C := a + b; Write(c,' '); A := b; B := c; End; End.
1. Выделение цифр из двузначного числа Program Z91; Var X: integer; // двузначное число C1,c2: integer; // первая и вторая цифры двузначного числа Begin Write('Введите двузначное число: '); Readln(x); C1 := x div 10; C2 := x mod 10; Writeln('Первая и вторая цифры двузначного числа: ',c1,' ',c2); End. 2. Минимум из введенных Program Z92; Const n = 10; Var Min: integer; X: integer; I: integer; Begin Writeln('Введите ',n,' значений: '); Read(x); Min := x; For i := 2 to n do Begin Read(x); If x<min then Min := x; End; Writeln('Минимальное значение = ',min); End.
1. Обмен значений двух переменных с использованием третьей Program Z101; Var X,y: real; V: real; // вспомогательная переменная Begin Write('Введите x,y: '); Readln(x,y); V := x; X := y; Y := v; Writeln('Новые значения x,y: ',x,' ',y); End. 2. Вывод букв английского алфавита Program Z102; Var c: char; Begin For c := 'a' to 'z' do Write(c,' '); Writeln; C := 'A'; While c<='Z' do Begin Write(c,' '); C := succ(c); End; End.
1. Бросание кубиков Program Z111; Var R1,r2: integer; // значения на верхних гранях кубиков Begin R1 := Random(6)+1; R2 := Random(6)+1; Writeln('Очки, выыпавшие на кубиках: ',r1,' ',r2); Writeln('Сумма очков равна ',r1+r2); End. 2. Вывод цифр числа Program Z112; Var x: integer; Begin Write('Введите x: '); Readln(x); Write('Цифры числа x в обратном порядке: '); While x<>0 do Begin Write(x mod 10,' '); X := x div 10; End; End.
1. Вычисление гипотенузы по катетам Program Z121; Var A,b: real; // катеты C: real; // гипотенуза Begin Write('Введите катеты прямоугольного треугольника: '); Readln(a,b); C := sqrt(a*a+b*b); Writeln('Гипотенуза = ',c); End. 2. Вычисление An Program Z122; Var N,i: integer; A,p: real; Begin Write('Введите a,n: '); Readln(a,n); P := 1; For i := 1 to n do P := p * a; Writeln(a,' в степени ',n,' = ',p); End.
1. Вычисление расстояния между двумя точками на прямой Program Z131; Var A,b: real; // координаты точек R: real; // расстояние между точками на прямой Begin Write('Введите координату точки a: '); Readln(a); Write('Введите координату точки b: '); Readln(b); R := abs(a-b); Writeln('Расстояние между точками = ',r); End. 2. Сумма и произведение введенных чисел Program Z132; Var I: integer; S,p: real; X: real; Begin Writeln('Введите 10 чисел: '); S := 0; P := 1; For i := 1 to 10 do Begin Read(x); S := s + x; P := p * x; End; Writeln('Сумма введенных чисел = ',s); Writeln('Произведение введенных чисел = ',p); End.
1. Вычисление A8 Program Z141; Var a: real; Begin Write('Введите a: '); Readln(a); Var a2,a4,a8: real; // вспомогательные переменные A2 := a * a; A4 := a2 * a2; A8 := a4 * a4; Writeln(a,' в степени 8 = ',a8); End. 2. Определение простоты числа Program Z142; Var N: integer; Issimple: boolean; Begin Writeln('Введите число: '); Readln(N); Issimple := True; For var i:=2 to round(sqrt(N)) do // если число составное, то один из его сомножителей <= sqrt(N) If N mod i = 0 then Begin Issimple := False; Break; End; If issimple then Writeln('Число ',N,' простое') Else writeln('Число ',N,' составное'); End.
1. Вычисление площади круга Program Z151; Const Pi = 3.1415; Var R: real; // радиус круга S: real; // площадь круга Begin Write('Введите радиус круга: '); Readln(r); S := Pi*r*r; Writeln('Площадь круга равна ',S); End. 2. Определение четверти, в которой находится точка Program Z152; Var X,y: integer; // Координаты точки Quater: integer; // Номер четверти Begin Write('Введите координаты точки: '); Readln(x,y); If x>0 then If y>0 then Quater := 1 Else Quater := 4 Else If y>0 then Quater := 2 Else Quater := 3; Writeln('Номер четверти = ',Quater); End.

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

1. Способы представления алгоритма.

2. Что такое блок-схема?

Требования к отчету:

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

2. Цель работы.

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

4. Скриншоты выполненных заданий.

5. Ответы на вопросы.

6. Выводы.

Литература:

ЛО4, 5

Лабораторная работа №5

Наши рекомендации