М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
sasha7666
sasha7666
17.05.2021 10:06 •  Информатика

Создать функцию вычисления объема усеченного конуса, входные данные для функции: R - радиус нижнего основания, r - радиус верхнего основания, h - высота конуса. Через язык C
Без всяких библиотек только

👇
Ответ:
krohaaaaaaaa
krohaaaaaaaa
17.05.2021

Код:

#include <stdio.h>

float V(float R, float r, float h)

{

   if(R <= r || h <=0 || r <= 0 || R <=0)

       return -1;

   return (3.14 * h * (R*R + R*r + r*r)) / 3;

}

int main()

{  

   float test = V(10, 5, 5);

   printf("%f\n", test);

   test = V(5, 5, 1);

   printf("%f\n", test);

   test = V(10, 5, 0);

   printf("%f\n", test);

   test = V(5, 6, 5);

   printf("%f\n", test);

   test = V(4, 3.99, 6);

   printf("%f", test);

   

   return 0;

}

4,7(55 оценок)
Открыть все ответы
Ответ:
rumtum
rumtum
17.05.2021
#include <iostream>
using namespace std;

struct link 

    double data; 
    link* next; 
}; 
 
link* first = NULL; 
 
void additem(int d) // добавление элементов список

    link* newlink = new link; 
    newlink->data = d; 
    newlink->next = first; 
    first = newlink; 

 
void display() // вывод на экран

    link* current = first; 
    while(current) 
    { 
        cout << current->data << " "; 
        current = current->next; 
    }  
}  

int max() // max

    link* current = first; 
    int m=0;
    while(current) 
    { 
        if (current->data > m) m = current->data; 
        current = current->next; 
    }
    return m;


void norm(int m) // нормализация

    link* current = first; 
    while(current) 
    { 
        current->data /= m; 
        current = current->next; 
    }  


int main() 

    int n=10;
    int a;
    for (int i=1; i<n; i++) {
    cin >> a;
    additem(a); 
    }
    display();
    cout << endl << max() << endl;
    norm(max());
    display();
}

Пример:
64 45 19 42 83 38 71 23 52
83
0.771084 0.542169 0.228916 0.506024 1 0.457831 0.855422 0.277108 0.626506
4,4(13 оценок)
Ответ:
galuhlulia
galuhlulia
17.05.2021
// PascalABC.NET 3.2, сборка 1417 от 28.03.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var n:=ReadInteger('Количество строк в массиве:');
  var m:=ReadInteger('Количество столбцов в массиве:');
  Writeln('*** Исходный массив [',n,',',m,'] ***');
  var a:=MatrRandom(n,m,0,1);
  a.Println(2); Writeln(2*a.ColCount*'-');
  var b:=a.ElementsByRow.Where(x->x=1).ToArray;
  var k:=b.Count; b.Println;
  Writeln('k=',k)
end.

Пример
Количество строк в массиве: 5
Количество столбцов в массиве: 12
*** Исходный массив [5,12] ***
 0 0 1 1 1 1 1 1 0 0 1 0
 0 1 1 1 0 0 1 1 1 0 1 0
 1 0 0 1 0 1 0 0 0 0 0 0
 1 0 0 0 0 1 0 1 0 0 1 0
 1 1 1 1 0 1 1 0 1 0 0 1

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
k=29
4,7(61 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ