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

Losowanie liczb przez pętle, skrócenie kodu.

Mały hosting, OGROMNE możliwości
0 głosów
262 wizyt
pytanie zadane 9 stycznia 2018 w Nasze projekty przez Piotrek Korzeniewski Początkujący (360 p.)

Witam przerabiam dopiero podstawy c++ i postanowiłem, że zrobię najlepszy program z mojej podstawowej wiedzy jaką posiadam. Program polega na wylosowaniu 5 liczb w skali 1:1000 i wskazaniu która jest największa, a która najmniejsza. W tym kodzie jest za dużo ifów i zdaje sobie z tego sprawę lecz nie bardzo wiem, jak kod można skrócić używając podstawowych komend w c++, wiem że można to zrobić za pomocą sortowania bąbelkowego, lecz chcialbym to przerobić później, Więc chcialbym otrzymać pomoc w postaci skrócenia kodu do minimum nie używająć przy tym innych komend jak if, else if. Dziekuje za wszystkie odpowiedzi oraz rady, Pozdrawiam.

#include <iostream>
#include <windows.h>
#include <time.h>
#include <stdlib.h>

using namespace std;

int liczba[5];

int main()
{
	cout<<"Podam 5 losowych liczb w zakresie od 1 do 1000 i wskaze ktora jest najwieksza, a ktora najmneijsza."<<endl;
	cout<<endl;
	Sleep(1100);
	
	srand(time(NULL));
	
	for(int i=0; i<=4; i++)
	{
		Sleep(600);
		liczba[i]=rand()%1000+1;
		cout<<liczba[i]<<"\a"<<endl;
	}		
	if((liczba[0]>liczba[1])&&(liczba[0]>liczba[2])&&(liczba[0]>liczba[3])&&(liczba[0]>liczba[4]))
	{
		Sleep(1000);
		cout<<"\a"<<endl<<"Najwieksza liczba jest: "<<liczba[0]<<endl;
	}
	if((liczba[1]>liczba[0])&&(liczba[1]>liczba[2])&&(liczba[1]>liczba[3])&&(liczba[1]>liczba[4]))
	{
		Sleep(1000);
		cout<<"\a"<<endl<<"Najwieksza liczba jest: "<<liczba[1]<<endl;
	}
	if((liczba[2]>liczba[0])&&(liczba[2]>liczba[1])&&(liczba[2]>liczba[3])&&(liczba[2]>liczba[4]))
	{
		Sleep(1000);
		cout<<"\a"<<endl<<"Najwieksza liczba jest: "<<liczba[2]<<endl;
	}
	if((liczba[3]>liczba[0])&&(liczba[3]>liczba[1])&&(liczba[3]>liczba[2])&&(liczba[3]>liczba[4]))
	{
		Sleep(1000);
		cout<<"\a"<<endl<<"Najwieksza liczba jest: "<<liczba[3]<<endl;
	}
	if((liczba[4]>liczba[0])&&(liczba[4]>liczba[1])&&(liczba[4]>liczba[2])&&(liczba[4]>liczba[3]))
	{
		Sleep(1000);
		cout<<"\a"<<endl<<"Najwieksza liczba jest: "<<liczba[4]<<endl;
	}
	else if((liczba[0]<liczba[1])&&(liczba[0]<liczba[2])&&(liczba[0]<liczba[3])&&(liczba[0]<liczba[4]))
	{
		Sleep(1000);
		cout<<"\a"<<endl<<"Najmniejsza liczba jest: "<<liczba[0]<<endl;
	}
	else if((liczba[1]<liczba[0])&&(liczba[1]<liczba[2])&&(liczba[1]<liczba[3])&&(liczba[1]<liczba[4]))
	{
		Sleep(1000);
		cout<<"\a"<<endl<<"Najmniejsza liczba jest: "<<liczba[1]<<endl;
	}
	else if((liczba[2]<liczba[0])&&(liczba[2]<liczba[1])&&(liczba[2]<liczba[3])&&(liczba[2]<liczba[4]))
	{
		Sleep(1000);
		cout<<"\a"<<endl<<"Najmniejsza liczba jest: "<<liczba[2]<<endl;
	}
	else if((liczba[3]<liczba[0])&&(liczba[3]<liczba[1])&&(liczba[3]<liczba[2])&&(liczba[3]<liczba[4]))
	{
		Sleep(1000);
		cout<<"\a"<<endl<<"Najmniejsza liczba jest: "<<liczba[3]<<endl;
	}
	else if((liczba[4]<liczba[0])&&(liczba[4]<liczba[1])&&(liczba[4]<liczba[2])&&(liczba[4]<liczba[3]))
	{
		Sleep(1000);
		cout<<"\a"<<endl<<"Najmniejsza liczba jest: "<<liczba[4]<<endl;
	}

  getchar();
  return 0;
}

 

1 odpowiedź

0 głosów
odpowiedź 9 stycznia 2018 przez CenterPL Pasjonat (19,070 p.)
int array[5]; // twoja tablica
int max = array[0];
int min = array[0];

for (int i=1; i <= 4; i++) {
	if (array[i] > max) max = array[i];
	if (array[i] < min) min = array[i];
}

Na przykład tak, pisałem na szybko, mam nadzieję, że gafy nie walnąłem.

Podobne pytania

0 głosów
1 odpowiedź 297 wizyt
pytanie zadane 13 sierpnia 2018 w JavaScript przez warzywko13 Użytkownik (840 p.)
0 głosów
1 odpowiedź 549 wizyt
pytanie zadane 18 stycznia 2021 w C# przez Ipencjaseko Nowicjusz (120 p.)
0 głosów
2 odpowiedzi 1,069 wizyt
pytanie zadane 27 września 2018 w Rozwój zawodowy, nauka, praca przez KajetanM Nowicjusz (120 p.)

93,718 zapytań

142,631 odpowiedzi

323,262 komentarzy

63,266 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

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...