From 5fc294d3bafb9775c648a23034d05ce57a877068 Mon Sep 17 00:00:00 2001 From: paulusja Date: Thu, 28 May 2026 12:54:27 +0200 Subject: [PATCH] Add input of numbers. --- 07/selectionsort.c | 33 ++++++++++++++++++++++++++------- 1 file changed, 26 insertions(+), 7 deletions(-) diff --git a/07/selectionsort.c b/07/selectionsort.c index 2d921d6..0f72e67 100644 --- a/07/selectionsort.c +++ b/07/selectionsort.c @@ -31,6 +31,7 @@ *****************************************************************/ #include +#include "../io/myio.h" #define MAX_ZAHLEN 100 @@ -38,18 +39,24 @@ void selectionsort(int array[], unsigned int len); unsigned int findeMaxIdx(int array[], unsigned int len); void tausche(int *elem1, int *elem2); void zeigeArray(int array[], unsigned int len); +unsigned int gibLaengeEin(unsigned int max); int main() { - int zahlen[MAX_ZAHLEN] = {10, 5, 3, -1, 0, 2}; - unsigned int len = sizeof(zahlen) / sizeof(zahlen[0]); - unsigned int benutzteLaenge = 6; + int zahlen[MAX_ZAHLEN] = {0}; + unsigned int len = gibLaengeEin(MAX_ZAHLEN); - zeigeArray(zahlen, benutzteLaenge); + for(int i = 0; i < len; i++) + { + printf("%d. Zahl:\n", i+1); + zahlen[i] = getNumber("Geben Sie eine Zahl ein: "); + } - selectionsort(zahlen, benutzteLaenge); - - zeigeArray(zahlen, benutzteLaenge); + printf("\nEingebene Zahlen: "); + zeigeArray(zahlen, len); + selectionsort(zahlen, len); + printf("\nSortierte Zahlen: "); + zeigeArray(zahlen, len); return 0; @@ -101,4 +108,16 @@ void tausche(int *elem1, int *elem2) int tmp = *elem1; *elem1 = *elem2; *elem2 = tmp; +} + +unsigned int gibLaengeEin(unsigned int max) +{ + unsigned int laenge = 0; + + printf("Maximale Laenge: %d\n", max); + + while(laenge <= 0 || laenge > max) + laenge = getNumber("Geben Sie die Anzahl an Zahlen ein: "); + + return laenge; } \ No newline at end of file