vott Napisano Czerwiec 3, 2012 Zgłoś Share Napisano Czerwiec 3, 2012 Witam, Miałem w szkole do napisania program w programie Dev o temacie: Napisz i uruchom program do zapisywania w tablicy podanych przez użytkownika n liczb i wyznaczania rozpiętości (różnicy największej i najmniejszej wartości). Napisałem to tak: #include<iostream> using namespace std; int main() { int n,min,max; int *tab; cout << "Podaj ile liczb" << endl; cin >> n; tab = new int [n] ; for(int i = 0;i<n;i++) { cout << "Wpisz element " << i+1 << ": "; cin >> tab[i]; } min = max = tab[0]; for(int i = 0;i<n;i++) { if(min > tab[i]) min = tab[i]; else if(max < tab[i]) max = tab[i]; } cout << "Najmniejsza wartosc " << min << endl; cout << "Najwieksza wartosc " << max << endl; system("pause"); return 0; } Podobno można to napisać w kilku linijkach na prostszy sposób, czy ktoś ma pomysł jak to uprościć ? Link do komentarza Udostępnij na innych stronach More sharing options...
Jason Napisano Czerwiec 3, 2012 Zgłoś Share Napisano Czerwiec 3, 2012 Jeśli skorzystasz z funkcji biblioteki standardowej, to trochę kodu Ci odpadnie: http://www.cplusplus...hm/max_element/ http://www.cplusplus...hm/min_element/ Skoro masz wyznaczyć rozpiętość, to nie ma sensu wypisywanie min i max, wypisz od razu max minus min Zamiast rozdzielać deklarację tablicy na dwie części można od razu wpisać: int *tab = new int [n] ; Jeśli chodzi o Dev C++, to używaj go sobie pod warunkiem, że to będzie któryś z nowych Dev'ów (Orwell albo wxDev), Bloodshed nie rozwija swojego Dev'a od wielu lat... Takie coś namodziłem: #include <iostream> #include <algorithm> using namespace std; int main() { int n; cout << "Podaj ile liczb" << endl; cin >> n; int *tab = new int [n] ; for(int i = 0;i<n;i++) { cout << "Wpisz element " << i+1 << ": "; cin >> tab[i]; } cout << "Rozpietosc zbioru: " << *max_element(tab,tab+n) - *min_element(tab,tab+n) << endl; system("pause"); return 0; } Na przyszłość dawaj kod w odpowiednich tagach!!! Link do komentarza Udostępnij na innych stronach More sharing options...
Polecane posty
Zarchiwizowany
Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.