Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Индивидуальное задание.docx
Скачиваний:
14
Добавлен:
23.07.2019
Размер:
1.48 Mб
Скачать

2 Системы счисления

2.1 Задание 1

Перевести десятичное число 87,5 в двоичную, восьмеричную и шестнадцатеричную системы счисления.

а) Перевод в двоичную систему счисления:

1) перевод целой части путем деления на 2:

2) перевод дробной части:

Конечный результат перевода: 87,5 (10) = 1010111,10 (2)

б) Перевод в восьмеричную систему счисления:

1) перевод целой части путем деления на 8:

2) перевод дробной части:

Конечный результат перевода: 87,5 (10) = 127,4 (8)

в) Перевод в шестнадцатеричную систему счисления:

1) перевод целой части путем деления на 16:

2) перевод дробной части

Конечный результат перевода: 87,5 (10) = 57,8 (16)

2.2 Задание 2

Перевести данные числа в десятичную систему счисления

а) Перевод числа 1100,01 (2) в десятичную систему счисления:

1100,01 (2) = 1*23+1*22+0*21+0*20+0*2-1+1*2-2=12,25 (10)

б) Перевод числа 10,10 (2) в десятичную систему счисления:

10,10 (2)=1*21+0*20+1*2-1+0*2-2=2,5 (10)

в) Перевод числа 6701,03 (8) в десятичную систему счисления:

6701,03 (8) = 6*83+7*82+0*81+1*80+0*8-1+3*8-2 =3521,046875 (10)

г) Перевод числа 25A,19 (16) в десятичную систему счисления:

25A,19 (16) = 2*162+5*161+10*160+1*16-1+9*16-2= 602,09765625 (10)

2.3 Задание 3

Перевести двоичное число 1010111,10 (2) в восьмеричную и шестнадцатеричную системы счисления:

а) Перевод в восьмеричную систему счисления:

При нахождении результата был применен метод триад (таблица 1, приложение Д.

б) Перевод в шестнадцатеричную систему счисления:

При нахождении результата был применен метод тетрад(таблица 2, приложение Д).

2.4 Задание 4

Перевести в двоичную систему счисления заданные восьмеричное и шестнадцатеричное число.

а) Перевод числа 6701,03 (8) в двоичную систему счисления:

При нахождении результата был применен метод триад( таблица1, приложение Д).

б) Перевод числа 25A,19 (16) в двоичную систему счисления:

При нахождении результата был применен метод тетрад (таблица 2, приложение Д).

2.5 Задание 5

Сложить и умножить двоичные числа 1100,01(2) и 10,10(2)

а) Сложение чисел:

Результат: 1100,01 (2) +10,10 (2)=1110,11(2)

б) Умножение чисел:

Результат: 1100,01(2) х 10,10 (2) =11110,1010(2)

3 Основы программирования

3.1 Задание 1

Составить блок-схему и программу нахождения всех членов геометрической прогрессии от 1 до 25 со знаменателем 1,25.

Алгоритм решения задачи представлен в виде блок-схемы на рис. 3.1

Рис. 3.1- Блок-схема к заданию 1

Программа определения всех членов геометрической прогрессии на языке программирования С++, представлена в приложении А.

3.2 Задание 2

Вычислить значение S:

S=

Алгоритм решения задачи представлен в виде блок-схемы на рис. 3.2

Рис 3.2- Блок-схема к заданию 2

Программа определения суммы на языке программирования С++, представлена в приложении Б.

3.3 Задание 3

Дана матрица A (n,n). Найти сумму элементов, принадлежащих главной диагонали матрицы, разделив ее на максимальный диагональный элемент.

Алгоритм решения задачи представлен в виде блок-схемы на рис. 3.3

Рис.3.3- Блок-схема к заданию 3.3

Продолжение рис. 3.3

Продолжение рис.3.3

Окончание рис. 3.3.

Программа определения суммы элементов, принадлежащих главной диагонали матрицы, разделив ее на максимальный диагональный элемент на языке программирования С++ , представлена в приложении В.

3.4 Задание 2а

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

Алгоритм решения задачи представлен в виде блок-схемы на рис. 3.4

Рис.3.4-Блок-схема к заданию 2а

Окончание рис.3.4

Программа определения списка допущенных выпускников ко второму экзамену на языке программирования С++, представлена в приложении Г.

Заключение

Изобретение языка программирования высшего уровня позволило нам общаться с машиной, понимать её (если конечно Вам знаком используемый язык), как понимает американец немного знакомый с русским языком древнюю азбуку Кириллицы. Проще говоря, мы в нашем развитии науки программирования пока что с ЭВМ на ВЫ. Поверьте мне, это не сарказм, вы только посмотрите как развилась наука программирования с того времени, как появились языки программирования, а ведь язык программирования высшего уровня, судя по всему ещё младенец. Но если мы обратим внимание на темпы роста и развития новейших технологий в области программирования, то можно предположить, что в ближайшем будущем, человеческие познания в этой сфере, помогут произвести на свет языки, умеющие принимать, обрабатывать и передавать информации в виде мысли, слова, звука или жеста. Так и хочется назвать это детище компьютеризированного будущего: “языки программирования "высочайшего" уровня”. Возможно, концепция решения этого вопроса проста, а ближайшее будущее этого проекта уже не за горами, и в этот момент, где-нибудь в Запорожье, Амстердаме, Токио или Иерусалиме, перед стареньким 133MHz горбится молодой, никем не признанный специалист и разрабатывает новейшую систему искусственного интеллекта, которая наконец-то позволит человеку, с помощью своих машинных языков, вести диалог с машиной на ТЫ.

Размышляя над этим, хочется верить в прогресс науки и техники, в высоко - компьютеризированное будущее человечества, как единственного существа на планете, пусть и не использующего один, определенный разговорный язык, но способного так быстро прогрессировать и развивать свой интеллект, что и перехода от многоязыковой системы к всеобщему пониманию долго ждать не придется.

Библиографические записи

  1. Лесневский А.С. Объективно-ориентированное программирование для начинающих: учебник- М: Бином, 2005.232с.

  2. Мозговой М.В. Классика программирования: алгоритмы, языки, автоматы, компиляторы, практический подход: учебник - М: Наука и техника, 2006.320с.

  3. Эккель Б. Философия С++. Введение в стандартном С++: учебник - М: Питер, 2004.572с.

  4. Димитриева Л.Л. Методическое руководство по оформлению курсовых и дипломных проектов: Ростов-на-Дону, 2009. 35 с.

  5. Мирошниченко И.И. Задание: Ростов-на-Дону,2011. 13с.

Приложения

(с.42-48)

П риложение А

(обязательное)

Программный код к заданию 3.1

# include <iostream>

using std::cout;

using std::endl;

using std::cin;

int main()

{ double b,s;

b=1.0;

while (b<=20)

{

s=b*1.25;

cout<<"s="<<s;

cout<<endl;

b=b+1;

}

system("pause");

return 0;

}

На рис. 3.1.1 приведена консоль программы к заданию 3.1

Рис. 3.1.1 - Консоль программы к заданию 3.1

Приложение Б

(обязательное)

Программный код к заданию 3.2

# include <iostream>

using std ::cout;

using std::cin;

using std::endl;

int main()

{int i;

double Z,S(0),k;

for ( i=0.0; i<=10.0;i++);

{

Z= (3^i)+(2^i);

k=1/Z;

S=S+k;}

cout<<"S="<< S;

cout<<endl;

system("pause");

return 0;

}

На рис. 3.2.2 приведена консоль программы к заданию 3.2.2

Рис. 3.2.2 – Консоль программы к заданию 3.2

Приложение В

(обязательное)

Программный код к заданию 3.3

#include<iostream>

#include<math.h>

#include <stdio.h>

# include<stdlib.h>

using namespace std;

int main()

{ double Z=0.0;

int S(0),n,max;

int a[256][256];

cout<<"Vvedite razmernost' matricy A(n,n):\n";

cin>>n;

for (int i=0;i<n;i++)

{

for(int j=0;j<n;j++)

{

cout<<"Vvedite element";

cin>>a[i][j];

max=a[0][0];

if (i==j) {S=S+a[i][j];

if (a[i][j]>max)

max=a[i][j];}

else {if (i+j==n-1)

{ if (max<a[i][j]) max=a[i][j];

}}}

cout<<endl;

}

for(int i=0;i<n;i++)

{ for (int j=0;j<n;j++)

{cout<<a[i][j];}

cout<<endl;}

Z=S/max;

cout<<"Z= "<<Z;

cout<<endl;

system("pause");

return 0;

}

Продолжение приложения В

На рис. 3.4.4 приведена консоль программы к заданию 3.3

Рис. 3.4.4 - Консоль программы к заданию 3.3

Приложение Г

(обязательное)

Программный код к заданию 3.2а

# include<iostream>

#include<math.h>

using namespace std;

int main()

{ int n,i,k;

int T[256];

int m[5];

cout<<"Vvedite kol-vo vipusknikov";

cin>>n;

for(i=0;i<n;i++)

{ cout<<"Vvedite nomer vipusknika";

cin>>T[i];

cout<<"Vvedite ozenku vipusknika";

cin>>m[i];

}

for( int i=0;i<n;i++)

{if ((m[i]>2)&&(m[i]<6))

cout<<"Vedomost dopushennih ";

cout <<" nomer "<<T[i] <<" ozenka " <<m[i];

cout<<endl;}

cout<<endl;

system("pause");

return 0;

}

Продолжение приложения Г

На рис. 3.3.3 приведена консоль программы к заданию 3.2а

Рис. 3.3.3- Консоль программы к заданию 3.2а

Приложение Д

(дополнительное)

Таблицы систем счисления

Таблица1-Восьмеричная система Таблица2-Шестнадцатеричная счисления система счисления

8-я

2-я

0

000

1

001

2

010

3

011

4

100

5

101

6

110

7

111

16-я

2-я

0

0000

1

0001

2

0010

3

0011

4

0100

5

0101

6

0110

7

0111

8

1000

9

1001

A

1010

B

1011

C

1100

D

1101

E

1110

F

1111