Показать площадь круга, прямоугольник периметра и объем куба

Программа должна показывать площадь круга, возвращать периметр прямоугольника, вычислять объем и отображать его через функцию.

Проблема в том, что расчет игнорирует меня. Как мне это решить?

Код:

#include<iostream>
#include<conio.h>

using namespace std;

void areacirculo(float);

float perimetro(float,float );

float volumenCubo(float);

int main()
{

    char nombre;
    int opc,P;
    float radio;
    float medidaradio;
    float lado1,lado2;
    float lado;
    float volumen;
    do{
        cout<<"SELECCIONE LA OPCION DESEADA ";
        cout<<"\n1) Calcular  y mostrar el área de un circulo "
        <<"\n2) Calcular y regresar el perímetro de un rectángulo "
        <<"\n3) Calcular y regresar el volumen de un cubo "
        <<"\n4) Mostrar un saludo "
        <<"\n5) Salir "<<endl;
        cin>>opc;
        switch(opc){
            case 1:
                cout<<"Ingrese radio ";
                cin>>radio;
                medidaradio=areacirculo;
                cout<<"Area del circulo= "<<medidaradio<<endl;
                break;
            case 2:
                cout<<"Ingrese medida de lados ";
                cin>>lado1>>lado2;
                P= float perimetro;
                cout<<"Perimetro: "<<P<<endl;
                break;
            case 3:
                cout<<"Ingrese medida del lado ";
                cin>>lado;
                volumen=float volumenCubo;
                cout<<"Volumen= "<<volumen<<endl;
                break;
            case 4:
                cout<<"Ingrese nombre ";
                cin>>nombre;
                cout<<"Hola "<<nombre<<endl;
                break;
            case 5:
                break;      
        }
    }while(opc!=5);
    getch();
    return 0;
}

void areacirculo(double){

    float radio,medidaradio;

    medidaradio=3.1416*(radio*radio);

}

float perimetro(float ,float ){

    float P,lado1,lado2;

    P=2*(lado1+lado2);

    return P;

}

float volumenCubo(float ){

    float volumen,lado;

    volumen=(lado*lado*lado);

    return volumen;

}
1
задан 29.11.2019, 13:01
2 ответа

из-за которого я вижу твой mГ©todos, они получают parГЎmetros, но во время называния их ты не перемещаешь их его parГЎmetros.

Кроме того я вижу, что твой mГ©todos они создают новые переменные внутри тела того же самого и не используют тех, которые перемещают его из-за parГЎmetro.

он Это не составляет, из-за которого, когда ты звонишь в них mГ©todos, ты не перемещаешь их его parГЎmetros. Я происхожу с тобой cГіdigo упорядоченный:

#include<iostream>
#include<conio.h>
using namespace std;

double areaCirculo(double radio) {
    return  3.1416 * (radio * radio);
}

float perimetroRectangulo(float lado1,float lado2) {
    return 2 * (lado1 + lado2);
}

float volumenCubo(float lado) {
    return (lado * lado * lado);
}

int main()
{

    char nombre;
    int opc, P;
    float radio;
    float medidaradio;
    float lado1, lado2;
    float lado;
    float volumen;
    do {
        cout << "SELECCIONE LA OPCION DESEADA ";
        cout << "\n1) Calcular  y mostrar el área de un circulo "
            << "\n2) Calcular y regresar el perímetro de un rectángulo "
            << "\n3) Calcular y regresar el volumen de un cubo "
            << "\n4) Mostrar un saludo "
            << "\n5) Salir " << endl;
        cin >> opc;
        switch (opc) {
        case 1:
            cout << "Ingrese radio ";
            cin >> radio;
            cout << "Area del circulo= " << areaCirculo(radio) << endl;
            break;
        case 2:
            cout << "Ingrese medida de lados ";
            cin >> lado1 >> lado2;
            cout << "Perimetro: " << perimetroRectangulo(lado1,lado2) << endl;
            break;
        case 3:
            cout << "Ingrese medida del lado ";
            cin >> lado;
            cout << "Volumen = " << volumenCubo(lado) << endl;
            break;
        case 4:
            cout << "Ingrese nombre ";
            cin >> nombre;
            cout << "Hola " << nombre << endl;
            break;
        case 5:
            break;
        }
    } while (opc != 5);

    return 0;
}

лишил этого Его getch (), из-за которого он не знал, что он был.

Есть пара вещей многословия cГіdigo, которая должна иметь в виду, как.h делать для заголовка delas функции и больше, но не важно потом этому aprenderГЎs.

Этот cГіdigo ты deberГ, - чтобы функционировать, я надеюсь, что он подал тебя, привет.

Обнял

2
ответ дан 01.12.2019, 10:39
  • 1
    Спасибо, он искал какие-то способы, но ему не удавалось понять это, снова спасибо – Zero Bourbon 30.11.2019, 04:40

Проблема - что я estГЎ игнорируя вычисление.

Есть один refrГЎn в мире ее programaciГіn, что говорит" Select isn't broken ", refrГЎn приходит из следующей anГ©cdota:

Мы Работаем в проекте, в котором заслуженный инженер был уверен, что команда select из системы Solaris был сломан . Никакое количество persuasiГіn или lГіgica он hacГ, - чтобы изменять идею (тот факт, что любая другая aplicaciГіn функционировала хорошо неуместная эра). PasГі недели когда пишут заплаты, которые, из-за какой-то extraГ±a razГіn, не parecГ-an решать проблему. Когда он в конце концов был вынужден садиться читать она documentaciГіn select , descubriГі проблема и это resolviГі в cuestiГіn минут. Сейчас мы используем фразу" select не estГЎ покрутил" как любезное напоминание, когда кто-то начинает обвинять в систему чего-то, которое вероятно было бы его виной.


Проблема не что estГ© игнорируя cГЎlculo, cГЎlculo estГЎ добро, ты cГіdigo estГЎ плохо. ОЧЕНЬ ПЛОХО.

  • В функции могут получать parГЎmetros anГіnimos:

    void anonimo(int) { std::cout << "No se cómo se llama el parámetro"; }
    void con_nombre(int parametro) { std::cout << parámetro; }
    

    funciГіn anonimo получает один parГЎmetro anГіnimo от типа int, в существо anГіnimo не моги быть использованным. funciГіn con_nombre получает один parГЎmetro от имени parametro и может использовать это без проблем.

  • В функции могут возвращать стоимость или ничего не возвращать:

    float devuelvo_algo() { return 42f; }
    void devuelvo_nada() {};
    

    , Чтобы возвращать стоимость, ты должен использовать ее instrucciГіn return, как виден в ней funciГіn devuelvo_algo.

  • В , чтобы называть одну funciГіn, ты должен писать Ваше имя, и посылать между parГ©ntesis аргументы:

    anonimo(5);
    con_nombre(5);
    

Вкратце:

  1. Твои функции не используют Ваш parГЎmetros.
  2. Функции, что deberГ-an возвращать стоимость, не они estГЎn возвращая.
  3. ты не звонишь в функции соответствующим образом.

Бросает беглый взгляд в ответ Хоакин Руис , который содержит cГіdigo правильно, но который улучшаемый:

  1. Заголовок <conio.h> не estГЎ используя ergo, не deberГ, - чтобы включаться.
  2. Функции используют intermitentemente float или double в то время как переменные, которые читаются консоли, - все float лучше быть решенным конкретным типом.
    1. Это tambiГ©n применимое к буквальным numГ©ricos.
  3. высказываются mГЎs изменчивые необходимых.
  4. nombre должен быть цепь, не один carГЎcter.
  5. ГЎmbito переменных может сокращаться много.
  6. Могут менее назвать оператора << из std::cout.
  7. Пятый случай switch ненужный.

Упорядочивая предыдущие детали, cГіdigo podrГ, - чтобы быть похожим в:

#include <iostream>
#include <string>

using namespace std;

float areaCirculo(float radio) {
    return  3.1416f * (radio * radio);
}

float perimetroRectangulo(float lado1,float lado2) {
    return 2.f * (lado1 + lado2);
}

float volumenCubo(float lado) {
    return (lado * lado * lado);
}

int main()
{
    int opc;

    do {
        cout << "SELECCIONE LA OPCION DESEADA"
                "\n1) Calcular  y mostrar el área de un circulo"
                "\n2) Calcular y regresar el perímetro de un rectángulo"
                "\n3) Calcular y regresar el volumen de un cubo"
                "\n4) Mostrar un saludo "
                "\n5) Salir\n";

        cin >> opc;
        switch (opc) {
        case 1:
            float radio;
            cout << "Ingrese radio ";
            cin >> radio;
            cout << "Area del circulo= " << areaCirculo(radio) << endl;
            break;
        case 2:
            float lado1, lado2;
            cout << "Ingrese medida de lados ";
            cin >> lado1 >> lado2;
            cout << "Perimetro: " << perimetroRectangulo(lado1,lado2) << endl;
            break;
        case 3:
            float lado;
            cout << "Ingrese medida del lado ";
            cin >> lado;
            cout << "Volumen = " << volumenCubo(lado) << endl;
            break;
        case 4:
            string nombre;
            cout << "Ingrese nombre ";
            cin >> nombre;
            cout << "Hola " << nombre << endl;
            break;
        }
    } while (opc != 5);

    return 0;
}

ты Можешь видеть это функционируя в онлайн Try it! .

1
ответ дан 01.12.2019, 10:39
  • 1
    Спасибо, правда состоит в том, что я - достаточно новичок в том, что касается programació n, entendí во все до тех пор, пока в курсе я это не увидел договоренностей, ahí я не знал, что делать, таким же образом кажется, что я выразил себе плохо проблему, дело в том, что он не делал из правильной формы призыв к функциям, снова спасибо – Zero Bourbon 30.11.2019, 04:43