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

prosta Funkcja struktury i tablice

VPS Starter Arubacloud
0 głosów
198 wizyt
pytanie zadane 6 listopada 2016 w C i C++ przez marcin8352 Nowicjusz (230 p.)

Napisalem takie cos. Niestety nie moge wpasc na to jak napisac 2 funkcje. Jedna ma zwracac koszt zamowienia czyli ilosc*cena a druga ma znalesc najdrozsze zamowienie i wypisac jego nazwe. Znalesc najdrozsze zamowienie potrafie ale nie wiem jak sie do niego odwolac. Bylbym wdzieczny jakby ktos pomogl. Powinno byc bez wskaznikow. 

 

#include <iostream>

using namespace std;

struct zamowienie{
string nazwa;
float cena;
int ilosc;

};

void wypel(zamowienie tab[], int n)
{
   for(int i=0;i<n;i++)
   {

       cout<<"podaj nazwe produktu"<<endl;
       cin>>tab[i].nazwa;
       cout<<"podaj cene produktu"<<endl;
       cin>>tab[i].cena;
       cout<<"podaj ilosc produktu"<<endl;
       cin>>tab[i].ilosc;

   }
}




int main()
{
    int n;
    zamowienie tab[1000];
    cout<<"podaj ilosc zamowien"<<endl;
    cin>>n;
    wypel(tab,n);




    return 0;
}

 

 

1 odpowiedź

+1 głos
odpowiedź 6 listopada 2016 przez Przemek Gaduła (3,600 p.)
Jak znajdziesz najdroższe zamówienie to możesz potem zapisać do dodatkowej zmiennej indeks komórki w jakiej się znajduje. A potem tylko wypisujesz dane używając tej zmiennej.
komentarz 6 listopada 2016 przez marcin8352 Nowicjusz (230 p.)
jak to zrobic ? pryzjmijmy ze mam funkcje

najdrozsze(zamowienie tab[], int n)
{
int najdrozszy=0;
for(int i=0;i<n;i++)
{

if(tab[i].cena*tab[i].ilosc>najdrozszy)
najdrozszy=tab[i].cena*tab[i].ilosc;

}

return najdrozszy;
}
komentarz 6 listopada 2016 przez Przemek Gaduła (3,600 p.)
najdrozsze(zamowienie tab[], int n)
{
  int indeks = 0;
  int najdrozszy = tab[0].cena*tab[0].ilosc;
  for(int i = 1;i<n;i++)
  {
    int cena = tab[i].cena*tab[i].ilosc;
    if(cena > najdrozszy)
    {
      najdrozszy=cena;
      indeks = i;
    }
  }
  
  return indeks;
}

i potem w głównej funkcji

int najdrozszy = najdrozsze(tab, n);

cout << tab[najdrozszy].cena << itd...

 

Podobne pytania

0 głosów
1 odpowiedź 421 wizyt
0 głosów
0 odpowiedzi 356 wizyt
pytanie zadane 5 maja 2020 w C i C++ przez Atman Użytkownik (810 p.)
0 głosów
3 odpowiedzi 327 wizyt
pytanie zadane 25 lipca 2016 w C i C++ przez itcloud Gaduła (3,380 p.)

92,770 zapytań

141,695 odpowiedzi

320,518 komentarzy

62,107 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.

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...