Студопедия

КАТЕГОРИИ:

АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Int area( int length, int width )




Розробка алгоритму

1.1. Загальний|спільний| метод розв'язання

Спочатку йде загальний|спільний| заголовок. У заданій таблиці, перший рядок заголовки стовпців таблиці. Фактичні дані складають третю, четвертую і п'яту рядки. Шостий рядок - примітки|тлумачення|.

 Програма починається з введення фактичних даних. Для зручності оператора, перед введенням на екран виводиться запрошення, в якому перераховується, які саме дані чекає програма. За одне запрошення-введення вводиться|запроваджує| один рядок фактичних даних таблиці. Тобто, запрошення-вводу| повторюється тричі. Введені|запроваджувати| дані зберігаються в змінних програми.

На другому етапі програма виконує виведення даних на екран. Кожен рядок таблиці виводиться одним оператором виводу|висновку|. Серед рядків, які виводяться, є рядки без змінних значень (заголовки і лінії) і рядка із|із| змінними значеннями (рядки з|із| фактичними даними).

 

Визначення змінних програми

Для кожної змінної підбирається такий тип, який би забезпечував представлення в пам'яті її значення з|із| достатнім діапазоном і достатньою точністю.

 Школа. Ці дані є одним символом. Їх оголошення:

char| sch1|, sch2|, sch3|;

Кількість ченців. Ці дані є цілими числами в діапазоні 10 - 220. Цей діапазон перекривається діапазоном можливих значень типу unsigned short (діапазон цього типу: 0 - 255). Тобто оголошення відповідних змінних:

unsigned| short| cnt1|, cnt2|, cnt3|;

Площа земель. Це число з дробовою частиною, отже, відповідні змінні мають бути змінними з плаваючою крапкою. Точність даних - всього один знак після крапки, тому для їх уявлення буде достатньо типу float:

float| sq1|, sq2|, sq3|;

 

Текста программы

 

#include<iostream.h>

#include <windows.h>

#include <iomanip.h>

#include <string.h>

 

int main(){

SetConsoleCP(1251);

SetConsoleOutputCP(1251);

    

 

//------------------------------------Объявление основных переменных---

    

char sc1='Т', sc2='С', sc3='Д';         //школа

short int cnt1=220, cnt2=50, cnt3=10;   //количество монахов

double sq1=368.8, sq2=54.7, sq3=12.2;   //площадь земли

 

cout.setf(ios::left); //выравнивание элементов объекта cout слева

//--------------------------------------ввод данных------------------

/*

int i=1;                                //номер записи

                                             //ввод 1-й записи

cout<<i<<"\n";

cout<<setw(20)<<"Школа"<<":";

cin>>sc1;

cout<<setw(20)<<"Количество монахов"<<": ";

cin>>cnt1;

cout<<setw(20)<<"Площадь земли"<<":";

cin>>sq1;

                                             //ввод 2-й записи

i=i+1;

cout<<i<<"\n\n";

cout<<setw(20)<<"Школа"<<": ";

cin>>sc2;

cout<<setw(20)<<"Количество монахов"<<": ";

cin>>cnt2;

cout<<setw(20)<<"Площадь земли"<<": ";

cin>>sq2;

                                       //ввод 3-й записи

i++;

cout<<i<<"\n\n";

cout<<setw(20)<<"Школа"<<": ";

cin>>sc3;

cout<<setw(20)<<"Количество монахов"<<": ";

cin>>cnt3;

cout<<setw(20)<<"Площадь земли"<<": ";

cin>>sq3;

    

//--------------------------------------вывод данных-------------------

 

//                   Объявление переменных для печати таблицы

const int poz1=8,poz2=19, poz3=14;

const int poz_all=poz1+poz2+poz3+2*4;

const char simb='-';

    

cout.setf(ios::fixed);       //выдача в формате с фиксированной точкой

cout<<setprecision(2);       //два знака после запятой

 

cout<<endl;

cout<<setw(poz_all)<<"Буддийские монастыри Японии периода Нара\n";

cout<<endl;

cout.fill(simb);

cout<<setw(poz_all-1)<<simb<<endl;

 

cout.fill(' ');

cout<<"| "<<setw(poz1)<<"Школа";

cout<<"| "<<setw(poz2)<<"Количество монахов";

cout<<"| "<<setw(poz3)<<"Площадь земли"<<"| \n";

 

cout.fill(simb);

cout<<setw(poz_all-1)<<simb<<endl;

 

cout.fill(' ');

cout<<"| "<<setw(poz1)<<sc1;

cout<<"| "<<setw(poz2)<<cnt1<<"| "<<setw(poz3)<<sq1<<"| \n";

 

cout<<"| "<<setw(poz1)<<sc2;

cout<<"| "<<setw(poz2)<<cnt2<<"| "<<setw(poz3)<<sq2<<"| \n";

 

cout<<"| "<<setw(poz1)<<sc3;

cout<<"| "<<setw(poz2)<<cnt3<<"| "<<setw(poz3)<<sq3<<"| \n";

 

cout.fill(simb);

cout<<setw(poz_all-1)<<simb<<endl;

cout<<"Примечание: Т - Тэндай; С - Сингон; Д - Дзедзицу\n";

cout<<endl<<endl;                       //перевод строки*/

return;

}

 

Відладка програми

При відладці програми використовувався покроковий режим відладки з|із| відстежуванням|відслідковувати| значень змінних - тих, які вводяться|запроваджують|.

 

Результати роботи програми

 

При роботі програми на екран було відображено наступне|слідуюче|:

 

 

 

1.6. Виводи|висновки|

 

При виконанні лабораторної роботи вивчені питання:

· типи даних в мові|язиці| C;

· оголошення змінних в програмі;

· введення і виведення даних, форматування виводу|висновку|.

 


Використання функцій для організації введення даних і|та| виведення таблиці на екран.

Існує два способи передачі параметрів у функцію: за значенням і за адресою.

При передачі за значеннямв стек заносяться копії значень аргументів, і оператори функції працюють з цими копіями. Доступу до початкових значень параметрів у функції немає, а, отже, немає і можливості їх змінити.

При передачі за адресоюв стек заносяться адреси аргументів, а функція здійснює доступ до елементів пам'яті по цих адресах і може змінити початкові значення аргументів .

Приклад: Обчислити площу прямокутника заданої довжини і ширини. Для отримання вхідних даних (довжина і ширина) створити окрему функцію.

Створимо функцію "get_dimension", що буде змінювати значення змінних довжини і ширини ("this_length" і "this_width"), переданих їй як параметри, на значення , введені користувачем з клавіатури.

Зміна параметрів функції можлива при передачі параметрів по посиланню. У таких параметрів в заголовку функції при описі формальних параметрів після імені типу вказується символ "&".

Програма.

#include<iostream.h>

 

int area( int length, int width );

void get_dimensions( int& length, int& width );

 

   ------------------------------------------------   ------------------------------------------------ ГОЛОВНА ФУНКЦІЯ:

Int main()

{

int this_length, this_width;

 

get_dimensions( this_length, this_width );

cout << "Площа прямокутника з розмірами ";

cout << this_length << "x" << this_width;

cout << " дорівнює " << area( this_length, this_width ) << "\n";

 

return 0;

}                                      

 

-------------------------------- ФУНКЦІЯ ВВЕДЕННЯ РОЗМІРІВ ПРЯМОКУТНИКА :

void get_dimensions( int& length, int& width )

{

cout << "Введіть довжину: ";

cin >> length;

cout << "Введіть ширину: ";

cin >> width;

cout << "\n";

}                                              

 

   -------------------------------------- ФУНКЦІЯ ОБЧИСЛЕННЯ ПЛОЩІ :

int area( int length, int width )

{

return length*width;

}

Функція "get_dimensions" змінює значення параметрів "this_length" і "this_width", але не повертає ніякого значення. Цей факт відбивається і в прототипі, і у визначенні функції - як повертане значення вказаний тип "void" ("порожній" тип).


Розробка програми з використанням функцій

За рахунок використання функції програма стане яснішою і|та| компактнішою, тому що|бо| задача була розділена на три:

1. Функція введення початкових даних;

2. Функція виводу таблиці;

3. Головна функція, яка викликає спочатку функцію 1, а потім функцію 2.

Текст програми:

#include<iostream.h>

#include <windows.h>

#include <iomanip.h>

#include <string.h>

int i;       //номер записи

const char simb='-';

const int poz1=8;       // ширина поля "Школа"

const int poz2=19;      // ширина поля "Количество монахов"

const int poz3=14;      // ширина поля "Площадь земли"

const int poz_all=poz1+poz2+poz3+2*4;

//общая ширина всех полей с учетом

                        // символов границ для каждого поля("| ").

//------------------------------------------------------ input---

void input(char &school, short int &k_monk,double &square)

{

cout.setf(ios::left); //выравнивание элементов объекта cout слева cout<<i<<"\n";

cout<<setw(20)<<"Школа"<<":";

cin>>school;

cout<<setw(20)<<"Количество монахов"<<": ";

cin>>k_monk;

cout<<setw(20)<<"Площадь земли"<<":";

cin>>square;

return;

}

//------------------------------------------------------ output---

void output(char school, short int k_monk,double square)

{

cout.unsetf(ios::right);

cout.setf(ios::left);

cout<<setfill(simb)<<setw(poz_all-1)<<simb<<endl;         

cout<<setfill(' ')<<"| "<<setw(poz1)<<school; 

cout<<"| "<<setw(poz2)<<k_monk;

cout.unsetf(ios::adjustfield); // снятие всех флагов выравнивания

cout.setf(ios::fixed);        //вформат с фиксированной точкой

cout<<setprecision(2);        //два знака после запятой

cout<<"| "<<setw(poz3)<<setiosflags(ios::right)<<square<<"| \n";

return;

}

//------------------------------------------------------ main---

void main(){

SetConsoleCP(1251);

SetConsoleOutputCP(1251);

char sc1='Т', sc2='С', sc3='Д';     //школа

short int cnt1=220, cnt2=50, cnt3=10; //количество монахов

double sq1=368.8, sq2=54.7, sq3=12.2; //площадь земли

                                //ввод данных

i=1;

input(sc1,cnt1,sq1);

input(sc2,cnt2,sq2);

input(sc3,cnt3,sq3);

//вывод данных

                                          // Вывод заголовка таблицы         

cout.unsetf(ios::adjustfield);

cout.setf(ios::right);

cout<<endl<<setw(poz_all)<<"Буддийские монастыри Японии периода Нара\n";

cout<<endl;

                                          //вывод строк таблицы

output(sc1,cnt1,sq1);                   

output(sc2,cnt2,sq2);                   

output(sc3,cnt3,sq3);                   

                                          // Вывод строки примечания

cout.fill(simb);

cout<<setw(poz_all-1)<<simb<<endl;

cout<<"Примечание: Т - Тэндай; С - Сингон; Д - Дзедзицу\n";

cout<<endl<<endl;                   //перевод строки

     

return ;

}

 

 


Індивідуальні завдання|задавання|.

 Розробити програму, яка виводить на екран таблицю, що містить|утримує| дані, введені|запроваджувати| з клавіатури.



Варіант 1   

                                                                                                                   Офисные пакеты

Наименование (сокр.) Количество составных частей Цена ($)
О 4 870,75
S 5 1020,80
S 4 9,27

Примечание: О – Office, S - SmartSute, S - StarOffice

 

Варіант 2

                                                                               Ведомость спортивних состязаний

Код команды Количество балов Место в итоге
С 123.7 2
Ш 79.8 3
Д 134.8 1

Примечание: Д - "Динамо", С - "Спартак", Ш - "Шахтер"

 

Вариант 3

                                                                         Ведомость общественного транспорта

Вид транспорта маршрута Протяженность маршрута (км) Время в дороге (мин)
Т 12 27.5 75
М 17 13.6 57
А 16 57.3 117

Примечание: Тр - трамвай, М – маршрутное такси, А – автобус

 

Вариант 4

Информация о некоторых планетах солнечной системы

Планета Расстояниеот Солнца (млн км) Расстояние  от Солнца  (а.е.)   Период обращения (сут) Период вращения на экваторе (сут)
М 57.9 0.39 87.97 58
В 108.2 0.72 227.7 243
З 149.6 1.00 365.26 1

Примечание: М – Меркурий, В – Венера, З - Земля

 

 

Вариант 5  

                                                                                                                       Прайс-лист

Тип товара Цена за 1 шт (грн) Минимальное количество в партии (штук)
П 4.75 4
Б 13.90 10
К 411.00 1

 

Примечание: П - папка, К – Калькулятор, Б - бумага

 



Вариант 6  

                                                                             Вязкость металлов в жидком состоянии

Вещество Атомный номер Температура плавления (град.С) Вязкость (кг/м*сек)
А 13 700 2.90
В 83 304 1.65
С 82 441 2.11

Примечание: А – Алюминий, В – Висмут,С - Свинец

 

 

Вариант 7  

                                                                                                     Скорость звука в жидкостях

Вещество Тип Температура (град.С) Скорость (м/сек)
А Ч 20 1656
Р Ч 20 1451
К М 29 1406

Примечание:

                   Вещество:       А – Анилин, Р – Ртуть, Л- Кедровое;

Тип жидкости: Ч - чистое вещество, М – масло.

 

Вариант 8  

                                                                                         Сплавы с высоким сопротивлением

Сплав Сопротивление (ом) Темп.коэфф.сопр (1/град) Макс.температура (град.С)
К 0.44 0.00001 500
Н 0.39 0.39000 150
Ф 1.1 0.00010 900

Примечание: Сплав: К - Константан, Н - Никелин, Ф - Фехраль

 

 

Вариант 9  

                                                                                                     Свойства полупроводников

Вещество Сокращенное название вещества Ширина запрещенной зоны Движение дырок
Б Б 1.10 10
Т Т 0.36 1200
У У 1.45 100

Примечание:

                   Вещество: Б -  Бор, Т - Телур, У - Уран

                   Единицы измерения: ширина запрещенной зоны - эв; движение - кв.см/сек

 

Вариант 10

                                                                                                           Элементарные частицы

Частица Группа Заряд Масса покоя
Н Н 0 940,000
К М +1 494,000
Е Л -1 0,511
       

Примечание:

                   Частица: Н - Нейтрон, Л - Ка-плюс, Е - Електрон

                   Группы частиц: Г - гипероны, Н - нуклоны, М - мезоны, Л – лептоны

 

Вариант 11 

                                                                                         Искуственно полученные элементы

Атомный номер Название Массовое число Период полураспада (лет)
93 Н 237 220000
97 Б 247 700
98 К 251 660

Примечание: Н – Нептуний, Б - Берклий, К - Калифорний.

                       

Вариант 12

                                                                                                                 Японские острова

Остров Площадь (кв.км) Кол. малых островов Протяженность береговой линии (км)
Хонсю 230500 192 11875.8
Кюсю 42600 75 3072.2
Сикоку 18800 13 2946.1

Примечание: Х - Хонсю, С – Сикоку, K- Кюсю.

 

Вариант 13

                                                                                                                            Прайс-лист

Код товара Категория Цена (грн) Срок поставки (дн)
01.0018 К 11282.55 7
01.0033 С 170.00 1
02.0170 М 1735.25 14

Примечание: К - компьютеры, С - комплектующие, М - множительная техника

 

Вариант 14

                                                                                                     Журнал регистрации аварий:

Название предприятия Категория Утраты от аварии (тис.грн) Срок простоя (дн)
П 1 12.700 4
Т 3 0.711 1
А 2 1770.150 38

Примечание: П - Птицефабрика, Т - Теплоцентраль, А - Автосервис

 

Вариант 15

                                                                             Ведомости о присвоении квалификации

Фамилия Год рождения Оценка результатов экзаменов Присвоен уровень квалификации
Шевченко 1970 4.33 6
Розанов 1975 5.10 5
Панасюк 1966 3.07 3

Примечание: Ш - Шевченко, Р - Розанов, П - Панасюк

 

Вариант   16

                                                                             Некоторые виды антилоп  

Название Группа Место обитания Численность популяции
Д A 1.1 30000
Г B 1.2 560000
Б H 1.2 2500

Примечание:

          Название: Д -Джейран, Г -Гну, Б –Бейза

          Групи: А - настоящие антилопы, B - коровьи антилопы, H - лошадиные антилопи.

          Место обитания: 1.1 – Азия, 1.2 – Африка.

                       

 

Вариант   17

                                                                         Фирмы - производители СУБД

Фирма Количество. продуктов Годовой объем продажи ($) Часть рынка (%)
O 1 2488000000 31.1
I 3 2392000000 29.9
M 2 1048000000 13.1

Примечание:  по данным Gartner Group за 1999г.

                   Фирма: O - Oracle, I- IBM, M - Microsoft.

 

Вариант 18

                                                                                    Отдел кадров

Фамилия Место рождения Год рожд Оклад
И К 1975 517.50
П Б 1956 219.10
С Х 1967 300.00

Примечание:

       Фамилии: И – Иванов, П - Петренко, С – Сидоров;

       Место рождения: К - Киев, Б - Бердичев, Х - Харьков.

 

 

Вариант 19

                                                                                                    Ведомость деталей

Наименование Тип Количество Вес 1 детали (г)
Ф 1.1 3 450
П 1.2 8 74
С 1.3 1 117050

Примечание:

       Наименование: Ф - Фланец,П - Переходник, С - Станина;

Тип: 1.1 - оригинальная, 1.2 - покупная, 1.3 – заимствованная.

 

Вариант 20                                              

Характеристики режимов памяти и шины FSB

Стандарт памяти Частота шины (МГц) Наименование (цифровой номер) Скорость передачи данных на один канал Скорость передачи данных на два канала
1.0667 333 5300 5312 10624
1.0800 400  4000 6400 12800
1.1200 600  9600 9600 19200

Примечание:

       Тип памяти: 1 - DDR2

           Наименование: PC2-цифровой номер.

 

Вариант 21

                                                                                         Ведомость комплектующих

Обозначение Тип Номинал Количество
11.2478 R 100000.0 12
11.2623 R 50000.0 10
12.0001 C 17.5 3

Примечание: R - резистор; C – конденсатор

 

 

Вариант 22

                                                            Проекты поиска внеземных сигналов

Год Научный руководитель Диаметр антенны (м) Рабочая частота (МГц)
1960 Д 26.456 1420
1970 Т 14.555 1875
1978 Х 300.748 1665

Примечание: наблюдались объекты от 2 звезд до нескольких галактик

                   Научный руководитель: Д - Дрейк, Т - Троицкий, Х –Хоровиц

 

Вариант 23

                                                                             Сельскохозяйственные культуры

Наименование Тип Посевная площадь (га) Урожайность (ц/га)
С 1.1 13000 45
Ч 1.2 8000 17
Р 1.2 28650 24

Примечание:

Тип: 1.1 - зерновые, 1.2 – бобовые;

                   Наименование: С -Соя, Ч - Чумиза, Р –Рис.

 

Вариант 24 

Приблизительное количество звезд разных спектральных классов в Галактике

Спектральный класс Приблизительная масса (отн.Солнца) Часть % Численность
O 32.00 0.00002 55000
F 1.25 2.90000 12000000000
M 0.20 73.2000 293000000000

Примечание: не показаны данные для классов: B, A, G, K

 

Вариант 25

Время выполнения некоторых программ, которые применяют параллельные алгоритмы

Название программы Количество строк кода Время исп. на SGI Callenge (cек) Время исп. на SGI Indy (cек)
O 1917 8.70 18.2
D 3386 6.95 22
T 417 1.05 2.98

Примечание:

SGI Callenge - ЦП R1000, SGI Indy - ЦП MIPS;

O - OCEAN, D - DYFESM, Т - TRFD.

 

Вариант 26

                              Конфигурация програмных средств информационных систем

Операционная система СУБД Мин.объем внешней памяти (MB) Мин.объем оперативной памяти (MB Приблизительная цена ($)
W S 230 48 3343.56
O D 110 22 2685.99
U O 130 24 3745.23

Примечание:  

       Операционные системы: W - Windows/XP, О - OS/2, U – Unix;

       СУБД: S - SQLServer, D - DB2, О - Oracle          

 

Вариант 27

                                                                  Сельскохозяйственные предприятия

Название Вид собственности Площадь земли (кв.м) Кол. работников
З Д 3000.45 120
Р К 174896.96 27
П Ч 56026.55 6

Примечание:  

Название: З - Заря, Р -Росинка, П - Петренко.

Вид собственности: Д - государственная, Ч - частная, К – кооперативная.

 

Вариант 28

                              Коэффициенты теплопроводимости материаллов

Вещество Тип Влажность (%) Коэффициент
А М 100 209.300
С Т 100 0.035
Г Д 20 0.730

Примечание:

Вещество: А - Алюминий, С -Стекловата , Г -Глина.

Тип: М - металлы, Т - термоизоляционные материалы, Д - другие материалы

 

Вариант 29

                                                                             Скорость звука в жидкостях

Вещество Тип Температура (град.С) Скорость (м/сек)
А 2.1 20 1656
Р 2.1 20 1451
К 2.2 29 1406

Примечание:

Тип жидкости: 2.1 - чистое вещество, 2.2 – масло.

Вещество: А -  Анилин, Р - Ртуть, К – Кедровое.

 

 

Вариант 30

                   Температура перехода веществ в сверхпроводниковое состояние

Вещество Тип Температура Zn
P М 20 7.3
A П 80 0.8
N C 42 10.5

Примечание:

       Вещество: P- Pb, A - Au, N - Nb

Тип вещества: М - металл, П - сплав, С – соединение

Вариант 31

Измерение скорости света

           

Методы измерения скорости света Исследователь Год Скорость света (м/с)
1 О 1676   2,22•108
2 Л 1849 3,12•108
2 И 1972 2.99792456•108

Примечание:

       Методы: 1 - Астрономический , 2 – Лабораторный.

       Исследователь: О - Оле Ремер, Л - Луи Физо, И - Ивенсон

Вариант 32

Таблица элементарных частиц

           

Частица Масса (Мэв) Масса (me) Время жизни (с)
М    105.66 206 2,2·10–6
Т    1782.00 3490 3,5·10–12
О 1675.00 3273 1·10–10

Примечание:

       Название частицы: М - Мюон, Т - Тау-лептон, О - Омега-гиперон.

 

 

    

 

    










Последнее изменение этой страницы: 2018-04-11; просмотров: 189.

stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда...