Організація

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

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

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

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

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

Міністерство науки і освіти України Національний університет “Львівська Політехніка” Інститут комп’ютерних наук та інформаційних технологій Кафедра ПЗ Звіт З лабораторної роботи № 11 з курсу «Основи програмування та алгоритмічні мови» Тема: Організація структур мовою С. Мета: Навчитися організовувати структури та розробляти алгоритми обробки структур засобами мови С. Завдання: З клавіатури ввести послідовність записів, які містять дані про результати сесії студентів групи: <Прізвище>, <Ім’я>, <Дата народження>, <Список екзаменаційних оцінок>. Сукупність даних про студентів групи оформити у масив. Роздрукувати введені дані у вигляді таблиці, а також подати інформацію згідно варіанту. Відсортувавати дані за прізвищами студентів в порядку протилежному алфавітному. Визначити п’ять студентів з найнижчим середнім рейтинговим балом. Блок-схема алгоритму  Текст програми #include<stdio.h> #include<string.h> #include<conio.h> #define F 15 #define M 20 struct st { 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,h,k,p,n,j, s_n = 0; float ser_bal[M], min; struct st stud[M],sort; clrscr(); puts("Vvedit kilkist studentiv: "); scanf("%d",&n); printf("Vvedit dani pro stydentiv u takiy poslidovnosti:\n" " -prizvysche\n" " -imia\n" " -chyslo i misiats cherez krapku\n" " -rik narodzhennya\n" "Rezyltaty ispytiv z:\n" " -programuvannja\n" " -geometrija\n" " -alhebrja\n" " -istorija\n"); for(i=0; i<n; i++) { h=i; printf("Vvedit dani pro %d stydenta:\n", ++h); scanf("%s%s%f%d%f%f%f%f",&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++) { printf("\n%s", stud[i].surname); gotoxy(18, wherey()); printf("%s", stud[i].name); gotoxy(33, wherey()); printf("%.2f.%d", stud[i].data,stud[i].rik); gotoxy(47, wherey()); printf("%.0f", stud[i].pr1); gotoxy(51, wherey()); printf("%.0f", stud[i].pr2); gotoxy(55, wherey()); printf("%.0f", stud[i].pr3); gotoxy(59, wherey()); printf("%.0f", stud[i].pr3); } 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; } } printf("\n\nDruk v poriadky protylyznomu alfavitnomy\n"); for (i = 0; i < n; i++) { printf("\n%s", stud[i].surname); gotoxy(18, wherey()); printf("%s", stud[i].name); gotoxy(33, wherey()); printf("%.2f.%d", stud[i].data,stud[i].rik); gotoxy(47, wherey()); printf("%.0f", stud[i].pr1); gotoxy(51, wherey()); printf("%.0f", stud[i].pr2); gotoxy(55, wherey()); printf("%.0f", stud[i].pr3); gotoxy(59, wherey()); printf("%.0f", stud[i].pr3); } for(i = 0; i < n; i++) ser_bal[i]=(stud[i].pr1+stud[i].pr2+stud[i].pr3+stud[i].pr4)/4; printf("\n\n5 studentiv z naynyschym serednim balom:\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) { printf("\n%s", stud[i].surname); gotoxy(18, wherey()); printf("%s", stud[i].name); gotoxy(33, wherey()); printf("%.2f.%d", stud[i].data,stud[i].rik); gotoxy(47, wherey()); printf("%.0f", stud[i].pr1); gotoxy(51, wherey()); printf("%.0f", stud[i].pr2); gotoxy(55, wherey()); printf("%.0f", stud[i].pr3); gotoxy(59, wherey()); printf("%.0f", stud[i].pr3); ser_bal[i] = 101; s_n++; } } min = 101; for (i = 0; i < n; i++) if (min > ser_bal[i]) min = ser_bal[i]; } fflush(stdin); getchar(); } Протокол роботи програми Vvedit kilkist studentiv: 6 Vvedit dani pro stydentiv u takiy poslidovnosti: -prizvysche -imia -chyslo i misiats cherez krapku -rik narodzhennya Rezyltaty ispytiv z: -programuvannja -geometrija -alhebrja -istorija Vvedit dani pro 1 stydenta: Kulpa Ivan 20.10 1989 5 4 5 3 Vvedit dani pro 2 stydenta: Vandych Andriy 01.11 1991 5 5 4 5 Vvedit dani pro 3 stydenta: Kopcha Ivan 11.10 1990 4 1 3 2 Vvedit dani pro 4 stydenta: Dubnyckiy Oleh 25.12 1990 5 2 2 4 Vvedit dani pro 5 stydenta: Butsjak Svjatoslav 07.11 1989 3 2 2 4 Vvedit dani pro 6 stydenta: Kuzmych Natalija 31.12 1990 5 5 5 5 Kulpa Ivan 20.10.1989 5 4 5 5 Vandych Andriy 1.11.1991 5 5 4 4 Kopcha Ivan 11.10.1990 4 1 3 3 Dubnyckiy Oleh 25.12.1990 5 2 2 2 Butsjak Svjatoslav 7.11.1989 3 2 2 2 Kuzmych Natalija 31.12.1990 5 5 5 5 Druk v poriadky protylyznomu alfavitnomy Vandych Andriy 1.11.1991 5 5 4 4 Kuzmych Natalija 31.12.1990 5 5 5 5 Kulpa Ivan 20.10.1989 5 4 5 5 Kopcha Ivan 11.10.1990 4 1 3 3 Dubnyckiy Oleh 25.12.1990 5 2 2 2 Butsjak Svjatoslav 7.11.1989 3 2 2 2 5 studentiv z naynyschym serednim balom: Kopcha Ivan 11.10.1990 4 1 3 3 Butsjak Svjatoslav 7.11.1989 3 2 2 2 Dubnyckiy Oleh 25.12.1990 5 2 2 2 Kulpa Ivan 20.10.1989 5 4 5 5 Vandych Andriy 1.11.1991 5 5 4 4 Висновок Я навчився організовувати структури та розробляти алгоритми обробки структур засобами мови С.
Антиботан аватар за замовчуванням

31.03.2013 13:03-

Коментарі

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

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

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

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

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

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

Admin

26.02.2023 12:38

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