Організація

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних наук та інформаційних технологій
Факультет:
Не вказано
Кафедра:
Не вказано

Інформація про роботу

Рік:
2007
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Основи програмування та алгоритмічні мови
Група:
ПІ-11

Частина тексту файла (без зображень, графіків і формул):

Міністерство науки і освіти України Національний університет “Львівська Політехніка” Інститут комп’ютерних наук та інформаційних технологій Кафедра ПЗ Звіт З лабораторної роботи № 12 з курсу «Основи програмування та алгоритмічні мови» Тема: Організація обміну інформацією з дисковими файлами. Мета: Здобути практичні навики у використанні дискових файлів для зчитування та занесення інформації. Завдання: З клавіатури ввести послідовність записів, які містять дані про результати сесії студентів групи: <Прізвище>, <Ім’я>, <Дата народження>, <Список екзаменаційних оцінок>. Сукупність даних про студентів групи оформити у масив. Роздрукувати введені дані у вигляді таблиці, а також подати інформацію згідно варіанту. Відсортувавати дані за прізвищами студентів в порядку протилежному алфавітному. Визначити п’ять студентів з найнижчим середнім рейтинговим балом. Виконати наведений варіант завдання з лабораторної роботи №5, використавши файли для введення вхідних даних та виведення результатів. Блок-схема алгоритму  Текст програми #include<stdio.h> #include<string.h> #include<conio.h> #define F 15 #define M 20 struct s { char surname[F]; char name[F]; float data; int rik; float pr1; float pr2; float pr3; float pr4; }; void main(void) { int a, b, i, k, p, n = 0, j, s_n = 0; float ser_bal[M], min; struct s stud[M], sort; FILE *outf, *inf = fopen("c:\\borlandc/inf.txt", "r"); clrscr(); while (!feof(inf)) { fscanf(inf, "%s%s%f%d%f%f%f%f",&stud[n].surname,&stud[n].name,&stud[n].data,&stud[n].rik, &stud[n].pr1,&stud[n].pr2,&stud[n].pr3,&stud[n].pr4); n++; } fclose(inf); outf = fopen("c:\\borlandc/outf.txt", "w"); for(i = 0; i < n; i++) fprintf(outf, "\n%s\t%s\t%.2f.%d\t%.0f\t%.0f\t%.0f\t%.0f",stud[i].surname,stud[i].name,stud[i].data,stud[i].rik, stud[i].pr1,stud[i].pr2,stud[i].pr3,stud[i].pr4); for(i = 0; i < n; i++) for(k = 0; k < n; k++) { p=strcmp(stud[i].surname,stud[k].surname); if (p > 0) { sort = stud[i]; stud[i] = stud[k]; stud[k] = sort; } } fprintf(outf, "\n\nDruk v poriadky protylyznomu alfavitnomy\n"); for (i = 0; i < n; i++) fprintf(outf, "\n%s\t%s\t%.2f.%d\t%.0f\t%.0f\t%.0f\t%.0f",stud[i].surname,stud[i].name,stud[i].data,stud[i].rik, stud[i].pr1,stud[i].pr2,stud[i].pr3,stud[i].pr4); for(i = 0; i < n; i++) ser_bal[i]=(stud[i].pr1+stud[i].pr2+stud[i].pr3+stud[i].pr4)/4; fprintf(outf, "\n\n5 studentiv z naynyschym serednim balom:\n\n"); min = ser_bal[0]; for (i = 0; i < n; i++) { if (min > ser_bal[i]) min = ser_bal[i]; } for (j = 0; j < 5; j++) { for (i = 0; i < n; i++) { if (ser_bal[i] == min && s_n < 5) { fprintf(outf, "%s\t%s\t%.2f.%d\t%.0f\t%.0f\t%.0f\t%.0f\n",stud[i].surname,stud[i].name,stud[i].data,stud[i].rik, stud[i].pr1,stud[i].pr2,stud[i].pr3,stud[i].pr4); ser_bal[i] = 101; s_n++; } } min = 101; for (i = 0; i < n; i++) if (min > ser_bal[i]) min = ser_bal[i]; } fclose(outf); } Протокол роботи програми Вхідний файл Kulpa Ivan 20.10 1989 5 4 5 3 Vandych Andriy 01.11 1991 5 5 4 5 Kopcha Ivan 11.10 1990 4 1 3 2 Dubnyckiy Oleh 25.12 1990 5 2 2 4 Butsjak Svjatoslav 07.11 1989 3 2 2 4 Kuzmych Natalija 31.12 1990 5 5 5 5 Вихідний файл Kulpa Ivan 20.10.1989 5 4 5 3 Vandych Andriy 1.11.1991 5 5 4 5 Kopcha Ivan 11.10.1990 4 1 3 2 Dubnyckiy Oleh 25.12.1990 5 2 2 4 Butsjak Svjatoslav 7.11.1989 3 2 2 4 Kuzmych Natalija 31.12.1990 5 5 5 5 Druk v poriadky protylyznomu alfavitnomy Vandych Andriy 1.11.1991 5 5 4 5 Kuzmych Natalija 31.12.1990 5 5 5 5 Kulpa Ivan 20.10.1989 5 4 5 3 Kopcha Ivan 11.10.1990 4 1 3 2 Dubnyckiy Oleh 25.12.1990 5 2 2 4 Butsjak Svjatoslav 7.11.1989 3 2 2 4 5 studentiv z naynyschym serednim balom: Kopcha Ivan 11.10.1990 4 1 3 2 Butsjak Svjatoslav 7.11.1989 3 2 2 4 Dubnyckiy Oleh 25.12.1990 5 2 2 4 Kulpa Ivan 20.10.1989 5 4 5 3 Vandych Andriy 1.11.1991 5 5 4 5 Висновок Здобути практичні навики у використанні дискових файлів для зчитування та занесення інформації.
Антиботан аватар за замовчуванням

31.03.2013 13:03-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!