![]() ![]() |
13.11.2014г. в 02:44ч.
Коментар:
#1
|
|
|
Новак ![]() Група: Потребители Съобщения: 1 Дата на регистрация: 13.11.2014г. Потребител # 24 092 |
Много ще се радвам ако някой удари 1 рамо да направим блок схема на този код >> КОД #include <cstdlib> #include <stdio.h> #include <iostream> using namespace std; int readTanksCountFromInput() { int result; cout << "Моля въведете броя на варелите (5-10): "; cin >> result; if(result < 5 || result > 10) { cout << "ГРЕШКА: Броят на врелите трябва да е между 5 и 10"; exit(1); } return result; } void readTanksDataFromInput(int count, int *heightArray, int *diameterArray) { int idx = 0, h, d; while(idx < count) { cout << "Височина на варел [" << idx+1 << "]:"; cin >> h; if(h == 0) { cout << "ГРЕШКА: Височината не може да бъде 0. Моля опитайте Отново\n"; exit(1); } cout << "Диаметър на варел [" << idx+1 << "]:"; cin >> d; if(d == 0) { cout << "ГРЕШКА: Диаметърът не може да бъде 0. Моля опитайте отново\n"; d = -1; exit(1); } heightArray[idx] = h; diameterArray[idx] = d; idx++; } } void printTankData(int count, int H[], int D[], double V[], double S[], double totalVolume, double maxSurface) { for(int i=0; i < count; i++) { cout << "Варел[" << i+1 << "] Височина: " << H[i] << " Диаметър: " << D[i] << " Обем: " << V[i] << " Лице: " << S[i] << "\n"; } cout << "Общ Обем: " << totalVolume << "\n"; cout << "Максимална повърхност: " << maxSurface << "\n"; } void calculateData(int count, int H[], int D[], double *volumes, double *surfaces, double *totalVolume, double *maxSurface) { for(int i =0; i < count; i++) { double height = H[i]; double diameter = D[i]; double radius = diameter / 2; double volume = 3.14 * radius * radius * height; double surface = 2 * 3.14 * height * radius; *totalVolume += volume; if(surface > *maxSurface) { *maxSurface = surface; } volumes[i] = volume; surfaces[i] = surface; } } int main(int argc, char** argv) { double totalVolume = 0, maxSurface = 0; int H[10], D[10]; double volumes[10], surfaces[10]; // Четем от клавиатурата колко влемента (варела) имаме int n = readTanksCountFromInput(); // Четем от клавиатурата информацията за всеки варел (височина диаметър) readTanksDataFromInput(n, H, D); // Изчисляваме обемите и лицата за варелите calculateData(n, H,D, volumes, surfaces, &totalVolume, &maxSurface); //показваме информацията на екрана printTankData(n, H, D, volumes, surfaces, totalVolume, maxSurface); return 0; } |
|
|
![]() ![]() |