Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Розробка проекту «Рейтинг країнСодержание книги
Поиск на нашем сайте
За результатами олімпійських змагань» Завдання. Створити програму, за допомогою якої користувач зміг би за введеними даними про кількість золотих, срібних та бронзових медалей отриманих учасниками олімпіади кожної країни отримати інформацію про рейтинг країн за результатами олімпійських змагань: загальну кількість отриманих медалей та кількість набраних балів. Передбачити впорядкування таблиці за спаданням по стовпчику «Бали». Аналіз проекту Для реалізації проекту скористатись одним із засобів середовища програмування Delphi – компонентом StringGrid (вкладка палітри компонентів Additional), який слугує для відображення даних у вигляді таблиці. Цей компонент має багато властивостей. Розглянемо властивості компонента, які будемо використовувати в нашому проекті: · ColCount – містить кількість стовпчиків в таблиці; · RowCount – містить кількість рядків в таблиці; · FixedCols – містить кількість фіксованих по лівому краю стовпчиків в таблиці; · FixedRows – містить кількість фіксованих по верхньому краю рядків; · FixedColor – задає колір фіксованих елементів таблиці; · Color – задає колір таблиці; · Rows – містить список стовпчиків; · Row – містить номер рядка, в якому знаходиться обрана комірка; · Cells – дає змогу звернутися до конкретної комірки за вказаними номер стовпчика та номером рядка; · Options.goEditing – дає можливість «дозволити» (значення True) або «заборонити» (значення False) виконувати редагування комірок таблиці.
Для оздоблення форми олімпійською символікою скористаємося компонентом Shape, що слугує для розміщення на формі геометричних фігур – прямокутника, кола, квадрата, еліпса. Розмістимо на формі п’ять компонентів Shape та встановимо для цих компонентів відповідні значення певних властивостей для відображення п’ятьох кольорових кіл одного розміру.
ХІД РОБОТИ Алгоритм розробки проекту 1. Створити папку С:\Delphi\lab_8. 2. Завантажити середовище візуального програмування Delphi. 3. Розмістити на формі візуальні компоненти StringGrid1, Button1, Shape1-Shape5 з властивостями, як у таблиці 1. Таблиця 1
4. Для форми form1 створити процедуру опрацювання події OnActivate, в якій заповнити комірки фіксованого рядка та фіксованого стовпчика. procedure TForm1.FormActivate(Sender: TObject); Begin tab1.Cells[0,0]:='Країна'; tab1.Cells[1,0]:='Золотих'; tab1.Cells[2,0]:='Срібних'; tab1.Cells[3,0]:='Бронзових'; tab1.Cells[4,0]:='Всього медалей'; tab1.Cells[5,0]:='Балів'; tab1.Cells[0,1]:='Україна'; tab1.Cells[0,2]:='Білорусія'; tab1.Cells[0,3]:='Англія'; tab1.Cells[0,4]:='Германія'; tab1.Cells[0,5]:='Італія'; tab1.Cells[0,6]:='Китай'; tab1.Cells[0,7]:='Корея'; tab1.Cells[0,8]:='Куба'; tab1.Cells[0,9]:='Нідерланди'; tab1.Cells[0,10]:='Росія'; tab1.Cells[0,11]:='США'; tab1.Cells[0,12]:='Франція'; tab1.Cells[0,13]:='Японія'; end;
5. Створити для кнопки Button1 процедуру опрацювання події OnClick, яка містить обчислення загальної кількості отриманих меделей та кількості набраних балів, а також команди впорядкування таблиці за спаданням по стовпчику «Бали». procedure TForm1.Button1Click(Sender: TObject); var c,r:integer;{номер стовпчика та номер рядка таблиці} s:integer;{всього медалей у команди} p:integer;{балів у команди} m:integer;{номер рядка з максимальною кількістю балів} buf:array[0..5] of string; {буфер для обміну рядків} i:integer;{номер рядка - використовується у впорядкуванні} Begin for r:=1 to tab1.RowCount do //опрацювати всі рядки Begin s:=0;//загальна кількість медалей for c:=1 to 3 do if tab1.Cells[c,r]<>'' then s:=s+strtoint(tab1.Cells[c,r]) else tab1.Cells[c,r]:='0'; //загальна кількість балів p:=7*strtoint(tab1.Cells[1,r])+6*strtoint(tab1.Cells[2,r])+ 5*strtoint(tab1.Cells[3,r]); // виведення результатів tab1.Cells[4,r]:=inttostr(s); // всього медалей tab1.Cells[5,r]:=inttostr(p); // всього балів end; // впорядкування таблиці за спаданням - по 5-му стовпчику //впорядкування методом вибору for r:=1 to tab1.RowCount-1 do Begin m:=r; // найбільший елемент в r-му рядку for i:=r to tab1.RowCount-1 do if strtoint(tab1.Cells[5,i])>strtoint(tab1.Cells[5,m]) Then m:=i; if r<>m then Begin for c:=0 to 5 do Begin buf[c]:=tab1.cells[c,r]; tab1.Cells[c,r]:=tab1.Cells[c,m]; tab1.Cells[c,m]:=buf[c]; end; end; end; end;
6. Зберегти проект у папці С:\Delphi\lab_8. 7. Запустити проект та перевірити правильність його виконання.
Питання для самоконтролю: 1. Який компонент зручно використовувати для введення масиву? 2. Яка властивість визначає ім’я компоненту? 3. Яка властивість визначає кількість колонок в таблиці? 4. Яка властивість визначає кількість рядків у таблиці? 5. Яка властивість дозволяє або забороняє використовування клавіші TAB для переміщення курсора таблиці в наступний елемент таблиці? 6. Яка властивість визначає ознаку знаходження компоненту в режимі редагування? 7. Які властивості визначають ширину та висоту поля таблиці? 8. Яка властивість визначає ширину колонок таблиці? Лабораторна робота №9 Тема: Робота з файлами у Delphi. Мета роботи: Написати програму з використанням файлів.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2016-04-18; просмотров: 281; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.15.203.246 (0.007 с.) |