Перевод чисел из одной системы счисления в другую 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Перевод чисел из одной системы счисления в другую



ОТЧЁТ

учебной (по получению первичных профессиональных умений и навыков) практики

На базе проектно-технологической и научно-исследовательской профессиональной деятельности

                                                            Выполнил: студент группы                     

                                                                ФИТ.Б.ИВТ.ВМКСС-19.03 

                                                                                               Макаров М.К.

 

                                                                  Руководитель практики

                                                                 доцент кафедры ЭВМ, к.т.н.

                                                                                                       Чернышев О.Л.

 

 

Тверь 2020

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

Государственное образовательное учреждение высшего образования

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

Факультет информационных технологий

Задание

Выдано студенту Макарову Максиму Константиновичу                                      (Ф.И.О)группы Б.ИВТ.ВМКСС-19.03 курса  1

Рабочая программа практики

1) ведение и оформление дневника;

2) составление и оформление отчета;

3) выполнение индивидуального задания: вариант № 15

 

Задание выдано «8» июня 20 20 г._____________________(подпись руководителя) Задание принял «8» июня 20 20 г._____________________(подпись практиканта)

 

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

Государственное образовательное учреждение высшего образования«Тверской государственный технический университет» ДНЕВНИК

учебной (по получению первичных профессиональных умений и навыков) практики

                                Макарова Максима Константиновича                                    

(Ф.И.О.)группа: Б.ИВТ.ВМКСС-19.03 Место прохождения практики:     дистанционно                                 Фамилия и занимаемая должность руководителя практики: доцент кафедры ЭВМ Чернышев Олег Леонидович                                 от кафедры: доцент кафедры ЭВМ: Яковлева Н.Г., ст. преподаватель: Неведомский А.Н. Начало практики 08.06.2020 г. Окончание практики 17.07.2020 г.

Календарно-тематический план практики

Дата

Д.н.

Время

Номер и наименование задания

Среда обучения

Отв. преп.

Прим.

09.06.20

вт.

Задание 1. Перевод чисел из одной системы счисления в другую.

ya_na-09@mail.ru

Яковлева

*.doc(х)

12.06.20

пт.

11.00

12.00

Контроль выполнения.

Выдача задания 2.

Skype

Чернышев

журнал

16.06.20

вт.

11.00

12.00

Контроль выполнения.

Выдача задания 3.

Skype

Чернышев

журнал

19.06.20

пт.

11.00

12.00

Контроль выполнения.

Выдача задания 4.

Skype

Чернышев

журнал

23.06.20

вт.

11.00

12.00

Контроль выполнения.

Выдача задания 5.

Skype

Чернышев

журнал

26.06.20

пт.

11.00

12.00

Контроль выполнения.

Выдача задания 6.

Skype

Чернышев

журнал

30.06.20

вт.

11.00

12.00

Контроль выполнения.

Выдача задания 7.

Skype

Чернышев

журнал,

задание Б.2

03.07.20

пт.

11.00

12.00

Контроль выполнения.

Выдача задания 8.

Skype

Чернышев

журнал

07.07.20

вт.

11.00

12.00

Контроль выполнения.

Выдача задания 9.

Skype

Чернышев

журнал

10.07.20

пт.

11.00

12.00

Контроль выполнения.

Выдача задания 10.

Skype

Чернышев

журнал

14.07.20

вт.

11.00

12.00

Контроль выполнения.

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

Skype

Чернышев

журнал

15.07.20

ср.

11.00

12.00

Формирование отчета.

Skype

Чернышев

журнал

16.07.20

чт.

11.00

12.00

Защита отчета о практике.

Skype

Чернышев

журнал


Блок номер 1

Вариант: №15

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

Нахождение экстремумов функций

Цель работы: выработать навык использования надстройки MS Excel Поиск решения.

Задание 2: Нахождение экстремумов функций

Вариант 15:

 

 

Выполнение задания:

Нахождение экстремумов функций

 

Вычисление производной функции

Программирование на языке VBA.

Циклические структуры.

Цель работы: Познакомится с основами программирования на языке Visual Basic for Applications (VBA) на примере создания пользовательских процедур.

Задание 5: Для выражения своего варианта:

1. Создайте процедуру табулирования выражения (образец − Пример 1) c использованием цикла типа “For … Next”.

2. Создайте процедуру табулирования выражения (образец − Пример 2) c использованием цикла типа “Do While … Loop”.

3. Блок-схему алгоритма задания запишите в тетрадь.

15

 

Выполнение задания 5.1 и 5.2:

Блок-схема для задания 5.1                           Блок-схема для задания 5.2

 

 

 

 


Вариант 15

Написать программу, которая меняет местами минимальный и максимальный элемент массива целых чисел.

Код программы:

Sub Main()

Dim F() As Integer

Dim I As Integer, J As Integer, X As Integer, Min As Integer, Max As Integer, MestoMin As Integer, MestoMax As Integer

Dim pos_x As String

G = InputBox("Размер массива G = ")

ReDim F(1 To G)

For I = 1 To G

   F(I) = Rnd * 100

   Range("A1").Value = F(I)

   pos_x = "a" & CStr(I)

   Range(pos_x).Value = F(I)

Next I

Max = F(1)

Min = F(1)

For I = 1 To G

   If Min > F(I) Then

       Min = F(I)

       MestoMin = I

       J = MestoMin

   End If

   If Max < F(I) Then

       Max = F(I)

       MestoMax = I

       X = MestoMax

   End If

Next I

Range("B1") = "Мин"

Range("C1") = "Макс"

Range("B2").Value = Min

Range("C2").Value = Max

Range("B3") = "Место минимума"

Range("C3") = "Место максимума"

Range("B4").Value = MestoMin

Range("C4").Value = MestoMax

MsgBox ("Минимальное значение массива =" & Min & vbCrLf & " Максимальное значение массива =" & Max)

MsgBox ("Место минимума =" & MestoMin & vbCrLf & " Место максимума =" & MestoMax)

F(J) = Max

F(X) = Min

MsgBox ("Массив с заменой в столбце D")

For I = 1 To G

   Range("D1").Value = F(I)

   pos_x = "d" & CStr(I)

   Range(pos_x).Value = F(I)

Next I

End Sub

Блок-схема к заданию 6:

Блок номер 2

Вариант: №15

Задание1:

В заданном массиве A (N) поменяйте местами наибольший и наименьший элементы (первые по порядку, если их несколько).

 

1. Алгоритм в виде блок-схемы:

Начало
Ввод «Введите число в 16 сс:»
Вывод number N  
Ввод «Перевод в 5 сс»
1=(number,2)
Ввод 1
Конец

 


2. Код программы

using System;

 

namespace SistSchs

{

class Program

{

   static void Main(string[] args)

   {

       Console.WriteLine("Введите число: ");

       int number = Convert.ToInt32(Console.ReadLine(), 16);

       Console.WriteLine("Перевод в 5 систему счисления:");

       string l = Convert.ToString(number, 5);

       Console.WriteLine(l);

       Console.ReadLine();

   }

 

}

}

3. Результат выполнения программы

Задание2

15.Выведите на печать номера точек, лежащих в круге радиусом R с центром в начале координат. Координаты точек заданы массивами X(N) и Y(N).

Начало
Цикл i пока i<Длины массива
Вывод «Из любой точки.»
X[i]= случайному значению от (-20;20))
Вывод «Введите размер.»
Конвертация G
Вывод «Введите радиус.»
Конвертация R
Y[i]= случайному значению от (-20;20))
Цикл i пока i< Длины массива  
F = (X[i] ^ 2 + Y[i] ^ 2)    
1

R>F
Нет
Да
Вывод «Координаты точки…»
Конец
1

 

Код программы:

using System;

namespace ПрактикаЛаба2

{

class Program

{

   static void Main(string[] args)

   {

       int G;

       int R;

       double F;

       Random Rnd = new Random();

       Console.WriteLine("Из любой точки координатной плоскости можно провести отрезок к началу координат. Если длина этого отрезка больше радиуса круга, то точка лежит за пределами круга и, следовательно, не принадлежит ему. Если же отрезок, соединяющий точку и начало координат, меньше радиуса круга с центром в начале координат или равен ему, то точка будет принадлежать кругу.\nОтрезок между любой точкой и нулевой точкой(началом координат) является гипотенузой прямоугольного треугольника, катеты которого равны значениям x и y координаты данной точки.");

       Console.Write("Введите размер массива = ");

       G = Convert.ToInt32(Console.ReadLine());

       Console.Write("Введите радиус круга = ");

       R = Convert.ToInt32(Console.ReadLine());

       double[] X = new double[G];

       double[] Y = new double[G];

       for (int i = 1; i < X.Length; i++)

       {

           X[i] = Rnd.Next(-20,20);

           Y[i] = Rnd.Next(-20,20);

       }

       for (int i = 1; i < X.Length; i++)

       {

           F = Math.Sqrt((X[i]*X[i]) + (Y[i]*Y[i]));

           if (R > F)

           {

           Console.WriteLine("Координаты точки лежащей в круге ({0};{1})",X[i],Y[i]);                   

           }

       }

           Console.ReadLine();

   }

}

}

Результат программы

 

Задание №3

Разработать и отладить программу, в которой реализовать алгоритмы сортировки и поиска

15. повторяющиеся элементы массива А, которых нет в массиве В Слиянием Линейный

 

Блок-схема

 

Код программы:

using System;

namespace Практика Лаба3

{

class Program

{

   static void Main(string[] args)

   {

       Random Rnd = new Random();

       int G;

       Console.Write("Введите размер массива = ");

       G = Convert.ToInt32(Console.ReadLine());

       int[] A = new int[G];

       int[] B = new int[G];

       int[] C = new int[G];

       for (int i = 0; i < A.Length; i++)

       {

           A[i] = Rnd.Next(1, 20);

           B[i] = Rnd.Next(1, 20);

       }

       for (int j = 0; j < A.Length; j++)

       {

           for (int i = A.Length - 1; i > 0 && i!= j; i--)

           {

               if (A[j] == A[i])

               {

                   int k = 0;

                   do

                   {

                       if (A[j]!= B[k])

                       {

                           k++;

                           if (k >= A.Length)

                           {

                               C[j] = A[j];

                               break;

                           }

                       }

                       else

                       {

                           break;

                       }

                   }

                   while (true);

               }

           }

       }

       MergeSort1(A);

       MergeSort1(B);                      

           

       Console.Write("Массив А:|");

       for (int i = 0; i < A.Length; i++)

       {

           Console.Write("{0}|", A[i]);

       }         

       Console.Write("\nМассив B:|");

       for (int i = 0; i < B.Length; i++)

       {

           Console.Write("{0}|", B[i]);

       }

       Console.Write("\nЭлементы,повторяющиеся в массиве А, которых нет в массиве В.\n");

       for (int i = 0; i < C.Length; i++)

       {

           if (C[i]!= 0)

           {

               Console.Write("|{0}", C[i]);

           }             

       }

       Console.Write("|");

       Console.ReadLine();

   }                

       static void Merge(int[] array, int lowIndex, int middleIndex, int highIndex)

       {

           var left = lowIndex;

           var right = middleIndex + 1;

           var tempArray = new int[highIndex - lowIndex + 1];

           var index = 0;

           while ((left <= middleIndex) && (right <= highIndex))

           {

               if (array[left] < array[right])

               {

                   tempArray[index] = array[left];

                   left++;

               }

               else

               {

                   tempArray[index] = array[right];

                   right++;

               }

               index++;

           }

           for (var i = left; i <= middleIndex; i++)

           {

               tempArray[index] = array[i];

               index++;

           }

           for (var i = right; i <= highIndex; i++)

           {

               tempArray[index] = array[i];

               index++;

           }

           for (var i = 0; i < tempArray.Length; i++)

           {

               array[lowIndex + i] = tempArray[i];

           }

       }     

   static int[] MergeSort(int[] array, int lowIndex, int highIndex)

       {

       if (lowIndex < highIndex)

       {

           var middleIndex = (lowIndex + highIndex) / 2;

           MergeSort(array, lowIndex, middleIndex);

           MergeSort(array, middleIndex + 1, highIndex);

           Merge(array, lowIndex, middleIndex, highIndex);

       }

       return array;

       }

       static int[] MergeSort1(int[] array)

       {

       return MergeSort(array, 0, array.Length - 1);

       }     

   }

}

 

Результат программы

Задание №10

15.По трем заданным матрицам A (N, N), B (N, N) и C (N, N) постройте матрицу Х того же размера, каждый элемент которой вычисляется по формуле Xij = max { a (I, J), b (I, J), с (I, J)}.

Блок-схема

Начало
Цикл i пока i<N
A[i,j]= случайному значению от (0,100)
Вывод «Введите размер.»
Конвертация N
B[i,j]= случайному значению от (0,100)
Цикл j пока j<N
C[i,j]= случайному значению от (0,100)
1

 

 

Цикл j пока j<N
Цикл i пока i<N
max=A[j, i]              X[j, i]=max
1
(max < B[j, i])
max=B[j, i]              X[j, i]=max
(max < C[j, i])
max=C[j, i]              X[j, i]=max
2

2
Цикл iпока i<N
Цикл j пока j<N
Вывод «Массив А:»
Вывод «:»,A[i,j]
Вывод «»
Цикл iпока i<N
Цикл j пока j<N
Вывод «:»,B[i,j]
Вывод «»
Вывод «Массив B»
3

3
Цикл iпока i<N
Цикл j пока j<N
Вывод «Массив C:»
Вывод «:»,C[i,j]
Вывод «»
Цикл iпока i<N
Цикл j пока j<N
Вывод «:»,X[i,j]
Вывод «»
Вывод «Итоговый массив X»  
Конец

Код программы:

using System;

 

namespace ПрактикаЛаба4

{

class Program

{

   static void Main(string[] args)

   {

       int N;

       int max;

       Random Rnd = new Random();

       Console.Write("Введите размер массива = ");

       N = Convert.ToInt32(Console.ReadLine());

       int[,] A = new int[N, N];

       int[,] B = new int[N, N];

       int[,] C = new int[N, N];

       int[,] X = new int[N, N];

           

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

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

               {

               A[i, j] = Rnd.Next(0, 100);

               B[i, j] = Rnd.Next(0, 100);

               C[i, j] = Rnd.Next(0, 100);

               }

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

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

           {

               max = A[j, i];

               X[j, i] = max;

               if (max < B[j, i])

               {

                   max = B[j, i];

                   X[j, i] = max;

               }                

                   if (max < C[j, i])

                   {

                       max = C[j, i];

                       X[j, i] = max;

                   }                 

           }

       Console.WriteLine("Массив А:");

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

       {

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

           {

               Console.Write("{0,4}", A[i, j]);

           }

           Console.WriteLine();

       }

           Console.WriteLine("Массив B:");

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

       {

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

           {

               Console.Write("{0,4}", B[i, j]);

           }

           Console.WriteLine();

       }

       Console.WriteLine("Массив C:");

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

       {

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

           {

               Console.Write("{0,4}", C[i, j]);

           }

           Console.WriteLine();

       }

       Console.WriteLine("Итоговый массив X:");

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

       {

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

           {

               Console.Write("{0,4}", X[i, j]);

           }

           Console.WriteLine();

       }

       Console.ReadLine();

   }

}

}


 

Результат выполнения

 

Выводы:

Программа данной практики была составлена на основе всех тех знаний, которые были усвоены в 1 и 2 семестрах 1 курса в университете. Благодаря учебной практике были закреплены знания и навыки, получены при изучении курсов «Информатика», «Алгоритмические языки и программирование».

Первый модуль учебной практики включает в себя 6 заданий по курсу «Информатика». Все задания были направлены на повторение и закрепление знаний по темам:

· Задание 1. Перевод чисел из одной системы счисления в другую.

· Задание 2. Нахождение экстремумов функций. Решение системы нелинейных уравнений.

· Задание 3. Вычисление производной функции. Вычисление определенных интегралов.

· Задание 4. Разработка пользовательских форм в VBA.

· Задание 5. Программирование циклических структур в VBA.

· Задание 6. Работа с одномерными массивами данных в VBA.

Все темы и задания были проанализированы и выполнены.

Второй модуль по учебной практике включает себя 4 задания по курсу «Алгоритмические языки и программирование». Все задания были направлены на повторение и закрепление знаний по темам:

Массивы.

https://metanit.com/sharp/tutorial/2.4.php\

2. Сортировка слиянием. https://ru.wikipedia.org/wiki/Сортировка_слиянием

ОТЧЁТ

учебной (по получению первичных профессиональных умений и навыков) практики

На базе проектно-технологической и научно-исследовательской профессиональной деятельности

                                                            Выполнил: студент группы                     

                                                                ФИТ.Б.ИВТ.ВМКСС-19.03 

                                                                                               Макаров М.К.

 

                                                                  Руководитель практики

                                                                 доцент кафедры ЭВМ, к.т.н.

                                                                                                       Чернышев О.Л.

 

 

Тверь 2020

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

Государственное образовательное учреждение высшего образования

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

Факультет информационных технологий

Задание

Выдано студенту Макарову Максиму Константиновичу                                      (Ф.И.О)группы Б.ИВТ.ВМКСС-19.03 курса  1

Рабочая программа практики

1) ведение и оформление дневника;

2) составление и оформление отчета;

3) выполнение индивидуального задания: вариант № 15

 

Задание выдано «8» июня 20 20 г._____________________(подпись руководителя) Задание принял «8» июня 20 20 г._____________________(подпись практиканта)

 

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

Государственное образовательное учреждение высшего образования«Тверской государственный технический университет» ДНЕВНИК

учебной (по получению первичных профессиональных умений и навыков) практики

                                Макарова Максима Константиновича                                    

(Ф.И.О.)группа: Б.ИВТ.ВМКСС-19.03 Место прохождения практики:     дистанционно                                 Фамилия и занимаемая должность руководителя практики: доцент кафедры ЭВМ Чернышев Олег Леонидович                                 от кафедры: доцент кафедры ЭВМ: Яковлева Н.Г., ст. преподаватель: Неведомский А.Н. Начало практики 08.06.2020 г. Окончание практики 17.07.2020 г.

Календарно-тематический план практики

Дата

Д.н.

Время

Номер и наименование задания

Среда обучения

Отв. преп.

Прим.

09.06.20

вт.

Задание 1. Перевод чисел из одной системы счисления в другую.

ya_na-09@mail.ru

Яковлева

*.doc(х)

12.06.20

пт.

11.00

12.00

Контроль выполнения.

Выдача задания 2.

Skype

Чернышев

журнал

16.06.20

вт.

11.00

12.00

Контроль выполнения.

Выдача задания 3.

Skype

Чернышев

журнал

19.06.20

пт.

11.00

12.00

Контроль выполнения.

Выдача задания 4.

Skype

Чернышев

журнал

23.06.20

вт.

11.00

12.00

Контроль выполнения.

Выдача задания 5.

Skype

Чернышев

журнал

26.06.20

пт.

11.00

12.00

Контроль выполнения.

Выдача задания 6.

Skype

Чернышев

журнал

30.06.20

вт.

11.00

12.00

Контроль выполнения.

Выдача задания 7.

Skype

Чернышев

журнал,

задание Б.2

03.07.20

пт.

11.00

12.00

Контроль выполнения.

Выдача задания 8.

Skype

Чернышев

журнал

07.07.20

вт.

11.00

12.00

Контроль выполнения.

Выдача задания 9.

Skype

Чернышев

журнал

10.07.20

пт.

11.00

12.00

Контроль выполнения.

Выдача задания 10.

Skype

Чернышев

журнал

14.07.20

вт.

11.00

12.00

Контроль выполнения.

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

Skype

Чернышев

журнал

15.07.20

ср.

11.00

12.00

Формирование отчета.

Skype

Чернышев

журнал

16.07.20

чт.

11.00

12.00

Защита отчета о практике.

Skype

Чернышев

журнал


Блок номер 1

Вариант: №15

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

Перевод чисел из одной системы счисления в другую

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

Задание 1: Используя данные своего варианта выполнить преобразование чисел из одной системы счисления в другую. Решение представить в MS Word.

Вариант15:

110112 → А10 327,68 → А10 D11216 → А10 431210 → A2 65010 → А8 381810 → А16 36218 → А2  

 

 

Выполнение задания:

1. 110112 → А10

Номер разряда 4 3 2 0 1    
  1 1 0 1 1   =1*24+1*23+0*22+1*21+1*20=16+8+4+2+1=
Вес разряда   =16+8+4+2+1=31

 

11 0 112 →3110

 

 

2. 327,68 → А10

Номер разряда 2 1 0 -1      
  3 2 7, 6     =3*82+2*8+7*80+6*8-1=
Вес разряда     =192+16+7+3/4=215,75

 

32 7,68 →=215,7510

3. D11216 → А10

 

Номер разряда 3 2 1 0  
  D 1 1 2 =13*163+1*162+1*16+2*160=
Вес разряда =53248+256+16+2=53522

D1 1 216 →5352210

4. 431210 → A2                                            431210=10000110110002

4312 2                

0 2156 2              

  0 1078 2            

    0 539 2          

      1 269 2        

        1 134 2      

          0 67 2    

            1 33 2  

              1 16 2

                0

8

0

2      
                  4 0 2

                    1      
                         

 

 

5. 65010 → А8                                                     65010=12128

 

650 8    
2 81 8  
  1 10  
    2  

 

 

6. 381810 → А16                                                       381810=ЕСА16

 

3 818 16  
A 238  
  С  

 

7. 36218 → А2                                                036218 = 111100100012

 

Переведём 36218 в двоичную систему счисления, для этого каждую цифру будем переводить отдельно (причем в двоичной системе тогда должно быть по 3 цифры)

В восьмеричной 0 3 6 2 1
В двоичной 0 011 110 010 001

 

 



Поделиться:


Читайте также:




Последнее изменение этой страницы: 2021-05-27; просмотров: 42; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.220.140.5 (0.381 с.)