Om jag har en array där anv matat in 20 tal så är det ju ganska lätt att ta fram det högsta inmatade värdet.
Men hur tar jag fram det lägsta inmatade värdet.
Delar av koden(iMin kan man ju inte initiera till 0 för då blir det ju resultatet):
{
const int TAL=20;
int a [TAL];
double total=0.0;
int iMax = 0;
int iMin ;
cout<<"Mata in tjugo heltal "<<endl;
for (int i=0;i<TAL;i++)
cin>>a*;
cout << "Resultatet av din inmatning : "<<"\n"<<endl;
{
for (i=0;i<TAL;i++)
cout << "Tal nr " <<i+1<<" : "<<a*<< endl; }
for (i=0;i<TAL;i++) {
total += a*;
if( a > iMax )
iMax = a;
if( a < iMin )
iMin = a;
Mata in enbart negativa tal så kommer inte din koll för största talet fungera heller...
Börja med att sätta iMin och iMax till första värdet i arrayen. Visar det sig att det finns mindre värden än iMin i arrayen så byter du ut dem. Detsamma gäller om det finns större värden än iMax.
Du måste ju givetvis fylla arrayen med dina värden innan du sätter iMin och iMax. När du sätter iMin och iMax nu så innehåller a[0] enbart skräpvärden.
Jag är tvungen att inte hålla med. Så mycket enklare än det sättet som Marcus och jag föreslog kan jag ju inte påstå att din lösning är...
Tja, som sagt .. Man sparar ju ett par rader och är helt skyddad mot eventuella problem med oinitierade tilldelningar om koden inte placeras på rätt ställe. ;)
Tja, som sagt .. Man sparar ju ett par rader och är helt skyddad mot eventuella problem med oinitierade tilldelningar om koden inte placeras på rätt ställe. ;)
Är ju som sagt ny på detta.
Men i Limits.h lägger man då till dessa rader:
#include <limits.h>
...
...
int iMax=INT_MIN;
int iMin=INT_MAX ;
...
...
och bortkommenterar följande:
#define INT_MIN (-2147483647 - 1) /* minimum (signed) int value */
#define INT_MAX 2147483647 /* maximum (signed) int value */
tack.
Finns det någonstans där man kan läsa om vad olika include-filer innehåller??
En bok om C++ är en bra investering, jag skulle säga att det är dumt att försöka lära sig C++ utan att investera i en vettig bok. Sök i detta forum så hittar du boktips. Se även relaterade länkarna som finns.
260 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849