- •Структура билета
- •Типовые вопросы и задачи
- •Образцы билетов (старые, сейчас - похожие, но по 6 задач)
- •Подготовка к экзамену по аяп (Типовые задачи, подобные экзаменационным)
- •Void rebra(int n, int msm[nmax][nmax])
- •If (msm[I][j]) fprintf (fout,"%d %d ", I, j);
- •Int inf_1_el (inf_type *X, struct list *s)
- •Int kz; // Код завершения функции: 0 - успех, 1 - неудача
- •Inf_type rez; // Результат - значение 1-го элемента
- •Int inf_k_el (inf_type *X, int k, struct list *p)
- •Inf_type rez; // Результат - значение k-го элемента
- •Int k; // Номер искомого элемента
- •Int inf_k_el (inf_type *x1, inf_type *x2, int k, struct list2 *p)
- •Inf_type rez1, rez2; // Вставить описания необходимых величин
- •Int k; // Номер искомого элемента
- •Int inf_k_el (inf_type *X, int k, struct list *p)
- •Inf_type rez; // Вставить описания необходимых величин
Void rebra(int n, int msm[nmax][nmax])
{ int i, j; // Индекс строки и столбца
// Просмотр матрицы смежности по главной диагонали и выше
for (i=0; i<n; i++)
for (j=i; j<n; j++)
If (msm[I][j]) fprintf (fout,"%d %d ", I, j);
}
int main()
{
int n; // Число вершин
int m[NMAX][NMAX]; // Матрица смежности
if ((fin=fopen("input.txt","r"))==NULL)
{ puts ("File input.txt not found");
return 1;
}
if ((fout=fopen("output.txt","w"))==NULL)
{ puts ("File output.txt is not opened");
return 1;
}
ReadMsm(&n, m); // Ввод матрицы смежности
// PrintMsm(n, m); // Вывод матрицы смежности
rebra(n, m); // Получение и вывод решения задачи
fclose(fin); fclose(fout);
return 0;
}
/* Тест. Вход - n и матрица смежности:
4
0 1 1 0 Граф: 0 -- 1
1 0 1 0 | /
1 1 1 1 _| /
0 0 1 0 [_2--- 3
Результат: 0 1 0 2 1 2 2 2 2 3
*/
// P00_4.C Пример решения задачи (вместе с файлом ListNE.C)
// Задача 00.4. Составить функцию получения значения 1-го элемента
// заданного списка из целых чисел.
#include <stdio.h>
#include <stdlib.h>
// РЕШЕНИЕ ЗАДАЧИ 00.4: описание данных и функция INF_1_EL
#define INF_TYPE int // ТИП информации ВЫБРАТЬ: int char float char*
#define F_ "%d" // ФОРМАТ информации ВЫБРАТЬ: %d %c %f %s
#define INF_ Z // ИМЯ информации Z можно оставить или заменить
struct LIST // элемент списка
{ INF_TYPE INF_; // информация элемента списка
struct LIST *next; // ссылка на следующий элемент
};
FILE *fin, *fout; // Входной и выходной файлы
#include "listNE.c" // Функции создания и вывода списка
// Получение Х - значения 1-го элемента списка s
// Код завершения : 0 - есть 1-й элемент, 1 - список пуст.
Int inf_1_el (inf_type *X, struct list *s)
{
if(s==NULL) return 1; // неудача
else {
*X = s->INF_;
return 0; // успех
}
}
int main()
{ struct LIST *q; // указатель списка
Int kz; // Код завершения функции: 0 - успех, 1 - неудача
Inf_type rez; // Результат - значение 1-го элемента
if ((fin=fopen("input.txt","r"))==NULL)
{ puts ("File INPUT.TXT is not found"); return 1; }
if ((fout=fopen("output.txt","w"))==NULL)
{ puts ("File OUTPUT.TXT is not opened"); return 1; }
CreateList(&q); // создание списка p из значений файла input.txt
// PrintList(q); // Вывод списка p для отладки или решения задачи
// Вызов функции-решения задачи
kz = INF_1_EL(&rez, q); // Код завершения функции: 0/1
fprintf(fout, "%d", kz);
if(kz==0) // есть 1-й элемент
fprintf(fout, " " F_, rez); // вывод 1-го элемента в формате F_
fclose(fin); fclose(fout);
return 0;
}
// P00_5.C Пример решения задачи 00.5 (вместе с файлом LISTNE.C)
// Задача 00.5. Составить функцию получения значения k-го элемента
// заданного списка из вещественных чисел.
#include <stdio.h>
#include <stdlib.h>
// РЕШЕНИЕ ЗАДАЧИ 00.5: описание данных и функция inf_k_el
#define INF_TYPE float // ТИП информации ВЫБРАТЬ: int char float char*
#define F_ "%f" // ФОРМАТ информации ВЫБРАТЬ: %d %c %f %s
#define INF_ Z // ИМЯ информации Z можно оставить или заменить
struct LIST // элемент списка
{ INF_TYPE INF_; // информация элемента списка
struct LIST *next; // ссылка на следующий элемент
};
FILE *fin, *fout; // Входной и выходной файлы
#include "listNE.c" // Функции создания и вывода списка
// Получение x - значения k-го элемента списка p
