• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Program obliczajacy obwod lub pole kola w c++

0 głosów
33,265 wizyt
pytanie zadane 14 grudnia 2018 w C i C++ przez R1CH Nowicjusz (140 p.)

Witam! Zaczynam swoją przygodę z programowaniem i napisałem taki kod. Polega on na podaniu warunku podania łańcucha Pole, bądź Obwod i wypisaniu wyniku. Niestety nie wiem jak napisać ten warunek bowiem podając jakikolwiek ciąg znaków program podaje obwód.

 

#include <iostream>
#include <math.h>

using namespace std;

int main()
{
    int r,Ok,Pk;
    string Obwod,Pole;
    cout << "Witaj podaj dlugosc promienia:";cin>>r;
    cout << "Dlugosc promienia wynosi:"<<r<<endl;
    cout << "Co chcesz obliczyæ? Napisz obwod lub pole:";
    if (cin>>Obwod)
    {
        Ok=2*M_PI*r;
        cout<<"Obwod wynosi:"<<Ok;
    }
    else if (cin>>Pole)
        {
        Pk=M_PI*r*r;
        cout<<"Pole wynosi:"<<Pk;
        }

    return 0;
}

 

3 odpowiedzi

0 głosów
odpowiedź 14 grudnia 2018 przez kapi117 Obywatel (1,420 p.)

Cóż, zamień string obwód,pole; na string wybor;

Potem zrób cin>> wybor;

I teraz

if(wybor=="obwod")

//Liczysz obwód

else if(wybor=="pole")

//Liczysz pole

else

cout << "nie ma takiej opcji!" <<endl;

komentarz 14 grudnia 2018 przez R1CH Nowicjusz (140 p.)
Dziękuje :)
komentarz 14 grudnia 2018 przez kapi117 Obywatel (1,420 p.)

Miło mi że pomogłem smiley

0 głosów
odpowiedź 14 grudnia 2018 przez niezalogowany
if (cin>>Obwod)

Co to za warunek ma być? On zawsze będzie zwracać prawdę przecież. W ogóle nic nie będzie sprawdzać nawet. Zrób to po ludzku na switchu.
0 głosów
odpowiedź 14 grudnia 2018 przez Dani3l Bywalec (2,160 p.)

Możesz to zrobić za pomocą funkcji switch: :)

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

using namespace std;
int r,pi=3;
char znak;
int main()
{
    cout<<"Podaj promien: "; cin>>r;
    cout<<"Pi wynosi: "<<pi<<endl;
    cout << "MENU" << endl;
    cout << "----" << endl;
    cout<<endl;
    cout<<"1.Obw kola"<<endl;
    cout<<"2.Pole kola"<<endl;
    znak=getch();
    switch(znak)
    {
    case '1':
    cout<<"Obwod wynosi: "<<pi*r*r;
    break;
    case '2':
    cout<<"Pole wynosi: "<<2*pi*r;
    break;
    default:
    cout<<"Nieprawidlowe rzadanie!"<<endl;
    exit(0);
    }

    return 0;
}

 

komentarz 14 grudnia 2018 przez niezalogowany
Tylko te zmienne globalne to akurat są zbędne, a nawet lepiej czegoś takiego nie pokazywać.

Podobne pytania

0 głosów
0 odpowiedzi 935 wizyt
pytanie zadane 26 grudnia 2019 w C i C++ przez hanry4265 Nowicjusz (120 p.)
0 głosów
1 odpowiedź 1,982 wizyt
pytanie zadane 15 kwietnia 2021 w C i C++ przez Monika02 Początkujący (270 p.)
+1 głos
1 odpowiedź 775 wizyt

93,425 zapytań

142,421 odpowiedzi

322,647 komentarzy

62,787 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
...