• 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.

Object Storage Arubacloud
0 głosów
143 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ź 165 wizyt
pytanie zadane 13 sierpnia 2018 w JavaScript przez warzywko13 Użytkownik (840 p.)
0 głosów
1 odpowiedź 291 wizyt
pytanie zadane 18 stycznia 2021 w C# przez Ipencjaseko Nowicjusz (120 p.)
0 głosów
2 odpowiedzi 747 wizyt
pytanie zadane 27 września 2018 w Rozwój zawodowy, nauka, praca przez KajetanM Nowicjusz (120 p.)

92,576 zapytań

141,426 odpowiedzi

319,652 komentarzy

61,961 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

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

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!

...