Изпитът по информатика в Пловдивски университет (С++)
Идеята за направа на дадения блог, имащ идея да даде решения на С++ на кандидатстудентски задачи по информатика, се основава на това , че в пространството има множество решения на задачи, дадени в един БЕЗОБРАЗЕН стил на програмиране, в който се наблюдава:
- използване на глобални променливи
- нечетливо именуване на променливи и функции
- структуриране на програмите като къщичка от карти – ха всеки момент да падне
За да може да се решат задачи на С++, давани на кандидатстудентски изпит по информатика в Пловдивски университет (ПУ), са необходими следните познания и умения за работа с:
- контролни структури if else, оператори за цикли for, while, do…while и
- масиви
- структури
- функции
Базирайки се на тях, може да се опише страгегия за решаване на задачи давани на кандидатстудентски изпит по информатика. Сайта има за цел да даде насоки и решения на С++, които да са в помощт на тези които са избрали да кандидатстват с информатика. Това може да стане лесно, поради факта, че задачите обикновенно имат следната еднотипна структура:
- В условието се определя един главен „елемент“ който се описва с низови или числови характеристики, например студент, описан с име и фамилия, среден успех и специалност.
- Условието винаги изисква въвеждане на списък от елементи, които са от тип на главния елемент.
- В условието винаги има извеждане на списък или подсписък.
- Изисква се някаква обработка на списъка, която почти винаги е сортиранто му, а може да има и други като например търсене на елемент/и в него и др.
За да се решат този тип задачи, освен познаването на езика C++, се изисква и добре структуриране на програмата, което да води до лесно решение, а не хаотично замотаване на кандидатстващия.
В случая бих предложил идея за структуруране на програма, която да включва:
- Дефиниране на базова структура описваща дадения Item (елемент), където Item може да бъде Student (студент), Visiter (посетител), Book (книга) и др. елемент в зависимост от условието на задачата.
- Дефиниране на функции за: въвеждане (input) на Item, извеждане (display или output) на Item, други прости функции за обработка на съответния Item.
- Дефиниране на структура ItemList, която да съдържа един масив (списък) със елементи от типа на базовата структура и цяло число указващо какъв е текущия брой в списъка.
- Дефиниране на функции които да въвеждат, извеждат и обработват влементите в списъка. Тези функции могат да ползват дефинираните функции за Item-а. Позването на глобални променливи би улеснило начинаещите, но не е препорачителено, защото програмите стават по-трудно четими. Целта е за всяко просто действие да се дефинира функция, която да има подходящо име, така че самото то да указва нейното предназначение. Например ако искаме да изведем данните за студент бихме избрали име displayStudentData, вместо funk1, view, display, show или друго по-неясно име.
Вашият коментар