Воскресенье, 22.02.2026, 15:50
Приветствую Вас, Гость
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Информатика и вычислительная техника Решение задач к госэкз
engineerklubДата: Четверг, 24.11.2022, 16:55 | Сообщение # 1
Генералиссимус
Группа: Администраторы
Сообщений: 37408
Репутация: 1
Статус: Offline
Решение задач с разбором к госэкзамену: Информатика и вычислительная техника

Тип работы: Шпаргалки к экзаменационным билетам
Сдано в учебном заведении: ДО СИБГУТИ

Описание:
Задачи подобраны из разных вариантов! Смотрите внимательно! Также есть скриншоты, которые я не вставил текстом. - смотрите в приложении. К задачам также даны отсылки к методичкам и учебникам, где можно почитать подробно.

Государственный экзамен по направлению 09.03.01 - «Информатика и вычислительная техника», профиль “Программное обеспечение средств вычислительной техники и автоматизированных систем”

1. (2 балла) Вариант 1 Дан бернуллиевский источник с алфавитом K = {a, b, c, d, e, f}. Вероятности символов источника: p(a)=0.1, p(b)=0.05, p©=0.05, p(d)=0.05, p(e)= 0.05, p(f)=0.7. Построить код Хаффмана для данного источника и определить его избыточность R (как разницу между средней длиной кодового слова SD и энтропией H). Вычисления выполнять с 3 знаками после запятой.

Вариант2.(2 балла). Дан бернулиевский источник с алфавитом K = {a, b, c, d, e, f}. Вероятности символов источника:
p(a)=0.1 p(b)=0.1 p©=0.1 p(d)=0.1 p(e)=0.1 p(f)=0.5.
Построить код Хаффмана для данного источника и определить его избыточность R (как разницу между средней длиной кодового слова SD и энтропией H).

2. (3 балла)Вариант1 Проанализировать работу программы и написать последовательность символов, выводимых на консоль.
Методичка по нитям
#include <windows.h>
#include <stdio.h>

unsigned long idA, idB;

void A ()
{
MSG msg;
PeekMessage (&msg, 0, 0, 0, PM_NOREMOVE), Sleep (1);
putchar (\'a\');
PostThreadMessage (idB, WM_USER, \'b\', 0);
putchar (\'d\');
PostThreadMessage (idB, WM_USER+1, \'c\', 0);
GetMessage (&msg, 0, 0, 0);
putchar (msg.lParam);
}

void B (char c)
{
MSG msg;
PeekMessage (&msg, 0, 0, 0, PM_NOREMOVE), Sleep (1);
GetMessage (&msg, 0, WM_USER + 1, WM_USER + 1);
putchar (msg.wParam);
PostThreadMessage (idA, WM_USER, c, c);
}

int main ()
{
putchar (\'e\');
CreateThread (0, 0, (LPTHREAD_START_ROUTINE) A, 0, 0, &idA);
CreateThread (0, 0, (LPTHREAD_START_ROUTINE) B, (LPVOID) \'f\', 0, &idB);
Sleep (1000);
putchar (\'g\');
return 0;
}
Ответ: eadcfg

2. Вариант2 (3 балла). Проанализировать работу программы и написать последовательность символов, выводимых на консоль.

#include <windows.h>
#include <stdio.h>

unsigned long idA, idB;
void A (char c)
(
HANDLE chan;
char str [2];
unsigned long n;
chan = CreateNamedPipe (“\\\\\\\\.\\\\pipe\\\\ppp”, PIPE ACCESS_DUPLEX,
 PIPE_TYPE_MESSAGE | PIPE_READMODE_MESSAGE, 1, 4, 4, 0, 0);
Sleep (100);
TransactNamedPipe (chan, &c, 1, str, 2, &n, 0);
putchar (str[0]), putchar (str[1]);
)

void B (char c)
(
HANDLE chan;
char str [2] = (‘a’, ‘b’);
unsigned long n;
chan = CreateFile (“\\\\\\\\.\\\\pipe\\\\ppp”, GENERIC_READ | GENERIC_ERITE,
0, 0, OPEN_EXISTING, 0, 0);
ReadFile (chan, str, 1, &n, 0);
putchar (str[0]), putchar (str[1]);
str[1] = c;
WriteFile (chan, str, 2, &n, 0);
)

int main ()
(
CreateThread (0, 0, (LPTHREAD_START_ROUTINE) A, (LPVOID) ‘c’, 0, &idA);
CreateThread (0, 0, (LPTHREAD_START_ROUTINE) B, (LPVOID) ‘d’, 0, &idB);
Sleep (1000);
return 0;
)

3. (2 балла) Вариант1Для предиката p на Прологе описаны правила:
p([_,_],L,L):-!.
p([X|L1],L2,L):–p(L1,[X,X|L2],L).
Какое значение получит L после следующего обращения к этому предикату
p([2,5,6,3,4],[],L)?

3. (2 балла).Вариант2 Для предиката p на Прологе описаны правила:
p(_,[],[]):-!.
p(X,[X|L],L):-!.
p(X, [_|L],Z):-p(X,L,Z).
Какое значение получит Z после следующего обращения к этому предикату p(2, [3,6,2,7,9,1],Z)?

Вариант 3
.р (_,[ ],[ ] ): - !
p([X,[X|L1],[X,X|L2]): - p(X,L1,L2),!
P (X,[Z|L1],[Z|L2]); - p(X,L1,L2)

L=? p(2,[1,2,3,2,3],L)

СКАЧАТЬ
 
engineerklubДата: Четверг, 24.11.2022, 16:55 | Сообщение # 2
Генералиссимус
Группа: Администраторы
Сообщений: 37408
Репутация: 1
Статус: Offline
Вариант4.
P([_],L2,L2); - !
P([X|L1],L2,[X|L]); - p(L1,L2,L),!

L=? p([1,2,3],[1,2],L)

Вариант 5.
p([_,_],L,L); - !
p([X|L1],L2,L); - p(L1,[X|L2],L)

L=7 p([2,5,6,3,4},[],L)

Вариант6.
p(_,_[X],[X]); - !
p(X,Y,[X|L1],[Y|L2]); - p(X,Y,L1,L2),!
P(X,Y,[Z|L1],[Z|L2]); - p(X,Y,L1,L2)

L =? ,p(1,0,[1,5,1,0,1],L)

4. (2 балла)Вариант1 Определить высоту случайного дерева поиска (СДП), построенного для последовательности данных: 15 2 1 8 10 8 11 4 3 6.
Высота дерева определяется по количеству ребер.

4. Вариант2(2 балла). Определить высоту случайного дерева поиска (СДП), построенного для последовательности данных:
17 18 2 6 10 15 1 2 10 16

5. (3 балла) Указать, что выведет на экран программа для заданных входных данных.

#include <iostream>
#include <cmath>
#include <cstdlib>

int fx(int **pts, int n)
{
 int res=0;
 for(int i=0; i<n; ++i)
  res+=(pts[(i+1)%n][0]-pts[0])*(pts[(i+1)%n][1]+pts[1]);
 return res;
}

int main()
{
 int n, **pts;
 std::cin >> n;
 pts=new int*[n];
 for(int i=0; i<n; ++i)
 {
  pts=new int[2];
  std::cin >> pts[0] >> pts[1];
 }
 std::cout << abs(fx(pts,n))/2.0;
}
Входные данные:
5
1 1
3 1
3 3
2 4
1 3

6. (2 балла)Вариант1 Для шифра Шамира с параметрами P= 17, Ca= 5, Cb = 7, найти недостающие параметры и описать передачу сообщения m=6.

6. (2 балла). Вариант2 Для шифра Эль-Гамаля с параметрами p=31, g=3, cB=10, k=5 найти недостающие параметры и описать процесс передачи сообщения m=15 пользователю B.

7. (2 балла) Вариант1 Построить электронную подпись RSA c параметрами P = 5, Q = 11 , D = 13 для сообщения m, значение хеш-функции которого равно 6.

7. (2 балла). Вариант2 Построить подпись RSA для сообщения m с хэш-функцией h(m)=55 при следующих параметрах пользователя: P=11, Q=13, С=11.

8. (2 балла) Построить хэш-таблицу размера m=7 методом линейных проб для данных
3, 2, 8, 9, 7, 5.
Начальная хэш-таблица пустая. Для построения таблицы использовать хэш-функцию x = h mod m. Определить количество коллизий.

9.Вариант1 (1 балл) Построить индексный массив, упорядочивающий данные по возрастанию (нумерация в массиве начинается с 1): 15 2 1 8 10 8 11 4 3 6.

9.Вариант2(1 балл). Построить индексный массив, упорядочивающий данные по возрастанию (нумерация в массиве начинается с 1):
17 18 2 6 10 15 1 2 10 16

10. (2 балла) Вариант1 Оптимальным образом расставить скобки при перемножении матриц
М1[2x5], M2[5x7], M3[7x3], М4[3x8], M5[8x4].
Какова трудоемкость умножения при оптимальной расстановке скобок?

10.(2 балла).Вариант2 Оптимальным образом расставить скобки при перемножении матриц M1[2x6], M2[6x7], M3[7x4], M4[4x3], M5[3x5].
Какова трудоемкость умножения при оптимальной расстановке скобок?

10.Вариант3 M1[7x3], M2[3x8], M3[8x3], M4[3x5], M5[5x2].

10.Вариант4 M1[5x4], M2[4x2], M3[2x6], M4[6x9], M5[9x3].

11Указать, что выдаст на экран следующая программа:

#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <cstring>
#include <conio.h>
using namespace std;
const int MAXL=40, N=5;
struct node{
 char *name;
 bool vo;
 node *next;
 node(char *_name, bool _vo):vo(_vo){
  name=new char[MAXL];
  strcpy(name,_name);
  next=NULL;
 }

СКАЧАТЬ
 
  • Страница 1 из 1
  • 1
Поиск:

Рейтинг@Mail.ru