Sprawdzanie c++

Agator
  • Rejestracja:prawie 5 lat
  • Ostatnio:prawie 5 lat
  • Postów:16
0

chciałbym wiedzieć w którym miejscu miałbym to zedytować bo nie za bardzo się w tym wszystkim łapię :/ muszę "Modyfikacja polega na
zastosowaniu instrukcji wyboru w funkcji main() oraz opracowaniu funkcji mnożenia.
Funkcje odejmowanie i dzielenie trzeba opracować" nic z tego nie rozumiem

Kopiuj
#include <iostream>

using namespace std;
int nwd(int a,int b)
{
    int w;
    if (a<0) a=-a;
    if (b<0) b=-b;
    while (a!=b)
    {
        if (a<b) b=b-a;
        if (a>b) a=a-b;
        w=a;
        return w;
    }

}
int nww(int a,int b)
   {
       int w;
       w=(a*b)/nwd(a,b);
       return w;
   }
   void dodawanie(int li1, int mi1,int li2,int mi2)
   {
       int l,m,wm;
       wm=nww(mi1,mi2);
       m=wm;
       l=wm/mi1*li1+wm/mi2*li2;
       cout<<endl<<li1<<"/"<<mi1<<"+"<<li2<<"/"<<mi2<<"="<<l<<"/"<<m;

   }
   void odejmowanie(int li1, int mi1,int li2,int mi2)
   {



   }
void mnozenie(int li1, int mi1,int li2,int mi2)
   {
       int l,m;
       m=mi1*mi2;
       l=li1*li2;
       cout<<endl<<li1<<"/"<<mi1<<"*"<<li2<<"/"<<mi2<<"="<<l<<"/"<<m;


   }
void dzielenie(int li1, int mi1,int li2,int mi2)
   {



   }

int main()
{
  int l1,m1,l2,m2;
  char zn;

 cout<<"podaj licznik pierwszego ulamka :";
  cin>>l1;
  cout<<endl<<"podaj mianownik pierwszego ulamka :";
  cin>>m1;
  cout<<endl<<"podaj licznik drugiego ulamka :";
  cin>>l2;
  cout<<endl<<"podaj mianownik drugiego ulamka :";
  cin>>m2;
   cout<<endl<<"podaj znak dzialania  :";
  cin>>zn;
  cout<<endl<<"nasze ulamki to "<<l1<<"/"<<m1<<" oraz "<<l2<<"/"<<m2<<endl;

  switch (zn)
  {
  case'+': dodawanie(l1,m1,l2,m2);
      break;
  case'-': odejmowanie(l1,m1,l2,m2);
      break;
  case'*': mnozenie(l1,m1,l2,m2);
      break;
      case'/': dzielenie(l1,m1,l2,m2);
      break;
  }

    return 0;
}

edytowany 1x, ostatnio: cerrato
KY
  • Rejestracja:prawie 5 lat
  • Ostatnio:prawie 5 lat
  • Postów:9
0
Kopiuj
void dzielenie(int li1, int mi1,int li2,int mi2)
   {
    //Piszesz kod, który dzieli dwa ułamki
   }
   void odejmowanie(int li1, int mi1,int li2,int mi2)
   {
 //Piszesz kod, który odejmuje dwa ułamki
   }
edytowany 2x, ostatnio: cerrato
Agator
  • Rejestracja:prawie 5 lat
  • Ostatnio:prawie 5 lat
  • Postów:16
0

Czy chodzi o coś takiego?

Kopiuj

   void dodawanie(int li1, int mi1,int li2,int mi2)
   {
       int l,m,wm;
       wm=nww(mi1,mi2);
       m=wm;
       l=wm/mi1*li1+wm/mi2*li2;
       cout<<endl<<li1<<"/"<<mi1<<"+"<<li2<<"/"<<mi2<<"="<<l<<"/"<<m;

   }
   void odejmowanie(int li1, int mi1,int li2,int mi2)
   {
        int l,m;
       m=mi1-mi2;
       l=li1-li2;
       cout<<endl<<li1<<"/"<<mi1<<"-"<<li2<<"/"<<mi2<<"="<<l<<"/"<<m;
   }
void mnozenie(int li1, int mi1,int li2,int mi2)
   {
       int l,m;
       m=mi1*mi2;
       l=li1*li2;
       cout<<endl<<li1<<"/"<<mi1<<"*"<<li2<<"/"<<mi2<<"="<<l<<"/"<<m;
   }
void dzielenie(int li1, int mi1,int li2,int mi2)
   {
       int l,m;
       m=mi1/mi2;
       l=li1/li2;
       cout<<endl<<li1<<"/"<<mi1<<"/"<<li2<<"/"<<mi2<<"="<<l<<"/"<<m;

   }
edytowany 1x, ostatnio: cerrato
KY
  • Rejestracja:prawie 5 lat
  • Ostatnio:prawie 5 lat
  • Postów:9
1

Skoro masz gotowca to go wklej w odpowiednie miejsce i sprawdź w kompilatorze czy wszystko dobrze działa :).

Agator
  • Rejestracja:prawie 5 lat
  • Ostatnio:prawie 5 lat
  • Postów:16
0
Kyou napisał(a):

Skoro masz gotowca to go wklej w odpowiednie miejsce i sprawdź w kompilatorze czy wszystko dobrze działa :).

No muszę powiedzieć że z tym kompilatorem to mi pomogłeś :D dzieki temu mogę znaleźć gdzie mam błędy, a coś oprócz tego odejmowania i dzielenia trzeba wrzucić do kodu?

cerrato
Moderator Kariera
  • Rejestracja:około 7 lat
  • Ostatnio:około 2 godziny
  • Lokalizacja:Poznań
  • Postów:8805
0

No muszę powiedzieć że z tym kompilatorem to mi pomogłeś :D dzieki temu mogę znaleźć gdzie mam błędy

I teraz nie wiem, czy to żart, czy pomyliłeś kompilator z debugerem, trollujesz czy naprawdę jesteś na bardzo początkującym poziomie ;)


Agator
  • Rejestracja:prawie 5 lat
  • Ostatnio:prawie 5 lat
  • Postów:16
0
cerrato napisał(a):

No muszę powiedzieć że z tym kompilatorem to mi pomogłeś :D dzieki temu mogę znaleźć gdzie mam błędy

I teraz nie wiem, czy to żart, czy pomyliłeś kompilator z debugerem, trollujesz czy naprawdę jesteś na bardzo początkującym poziomie ;)

jestem bardzo początkującym i chcę to tylko odklepać bo to na pewno nie jest dla mnie :(

cerrato
Moderator Kariera
  • Rejestracja:około 7 lat
  • Ostatnio:około 2 godziny
  • Lokalizacja:Poznań
  • Postów:8805
0

A jak sobie wyobrażałeś dalsze kroki, po ustaleniu jak program ma wyglądać.


Agator
  • Rejestracja:prawie 5 lat
  • Ostatnio:prawie 5 lat
  • Postów:16
0
cerrato napisał(a):

A jak sobie wyobrażałeś dalsze kroki, po ustaleniu jak program ma wyglądać.

"nauczanie zdalne"

cerrato
OK, nie mam więcej pytań. Ale w takim razie - albo jakieś zajęcia/lekcje opuściłeś, albo nauczyciel jest mało kompetentny i nie powiedział, co dalej, nie wytłumaczył itp.
Agator
po nauczycielu widać że rozumie ale nie potrafi tłumaczyć niestety :/
KY
  • Rejestracja:prawie 5 lat
  • Ostatnio:prawie 5 lat
  • Postów:9
1

Z wypowiedzi czuję, że ten program jest pisany w notatniku. Zainstaluj sobie CodeBlocks na start. Na internecie znajdziesz masę poradników poprawnie ma wyglądać instalacja.

edytowany 2x, ostatnio: Kyou
Agator
  • Rejestracja:prawie 5 lat
  • Ostatnio:prawie 5 lat
  • Postów:16
0
Kyou napisał(a):

Z wypowiedzi czuję, że ten program jest pisany w notatniku. Zainstaluj sobie CodeBlocks na start. Na internecie znajdziesz masę poradników poprawnie ma wyglądać instalacja.

mam zainstalowanego code blocka, tylko nie mogę się połapać dlaczego mi teraz np nie działa odejmowanie jak przed chwilą działało :(

KY
  • Rejestracja:prawie 5 lat
  • Ostatnio:prawie 5 lat
  • Postów:9
0

Swoją drogą przyjrzałem się temu:

Kopiuj
void odejmowanie(int li1, int mi1,int li2,int mi2)
   {
        int l,m;
       m=mi1-mi2;
       l=li1-li2;
       cout<<endl<<li1<<"/"<<mi1<<"-"<<li2<<"/"<<mi2<<"="<<l<<"/"<<m;
   }

W ten sposób twój program dla przykładowych liczb 6/8 5/7 da wynik 1/1.

edytowany 1x, ostatnio: cerrato
Agator
wymyśliłem jeszcze coś takiego na dzielenie: void dzielenie(int li1, int mi1,int li2,int mi2) { int l,o; l=mi1li2; o=li1mi2; cout<<endl<<li1<<"/"<<mi1<<"/"<<li2<<"/"<<mi2<<"="<<o<<"/"<<l; } ujdzie?
Agator
  • Rejestracja:prawie 5 lat
  • Ostatnio:prawie 5 lat
  • Postów:16
0
Kyou napisał(a):

Swoją drogą przyjrzałem się temu: void odejmowanie(int li1, int mi1,int li2,int mi2)

Kopiuj
 void odejmowanie(int li1, int mi1,int li2,int mi2)
   {
       int l,m,wm;
       wm=nww(mi1,mi2);
       m=wm;
       l=wm/mi1*li1-wm/mi2*li2;
       cout<<endl<<li1<<"/"<<mi1<<"-"<<li2<<"/"<<mi2<<"="<<l<<"/"<<m;

   }

jakąś chwilę temu zmieniłem na to

edytowany 1x, ostatnio: cerrato
KY
  • Rejestracja:prawie 5 lat
  • Ostatnio:prawie 5 lat
  • Postów:9
0

@Agator: dzielenie to odwrócone mnożenie. Do mianownika przypisz to co jest w liczniku i na odwrót. Następnie oblicz iloczyn tych liczb.

Agator
  • Rejestracja:prawie 5 lat
  • Ostatnio:prawie 5 lat
  • Postów:16
0
Kyou napisał(a):

@Agator: dzielenie to odwrócone mnożenie. Do mianownika przypisz to co jest w liczniku i na odwrót. Następnie oblicz iloczyn tych liczb.

A no to teraz czuję że dobrze wyszło :D W poleceniu chodziło tylko o to? Bo muszę przesłać przed 17 :p

Agator
Ej ale nawet to trochę to zrozumiałem :DDDD
KY
Cieszę się :). Może zainteresujesz się programowaniem bardziej niż myślisz ;).

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.