From 1bf1d139d7c86127709a386e827b7e4666c531ba Mon Sep 17 00:00:00 2001 From: James Boutaric Date: Wed, 10 Sep 2025 16:32:27 +0200 Subject: [PATCH] TD1.md --- bubblesort.c | 2 +- heapsort.c | 2 +- heapsort.h | 2 +- student_rank | Bin 0 -> 52336 bytes student_rank.c | 1 - student_rank.dSYM/Contents/Info.plist | 20 ++++++++++++++++ .../Contents/Resources/DWARF/student_rank | Bin 0 -> 12950 bytes .../Relocations/aarch64/student_rank.yml | 22 ++++++++++++++++++ 8 files changed, 45 insertions(+), 4 deletions(-) create mode 100755 student_rank create mode 100644 student_rank.dSYM/Contents/Info.plist create mode 100644 student_rank.dSYM/Contents/Resources/DWARF/student_rank create mode 100644 student_rank.dSYM/Contents/Resources/Relocations/aarch64/student_rank.yml diff --git a/bubblesort.c b/bubblesort.c index a848827..af97c8e 100644 --- a/bubblesort.c +++ b/bubblesort.c @@ -17,5 +17,5 @@ void bubblesort(int* array, int length) swapped++; } } - } while(swapped==1); + } while(swapped> 0); } diff --git a/heapsort.c b/heapsort.c index 668f4b7..7f9bfe5 100644 --- a/heapsort.c +++ b/heapsort.c @@ -43,7 +43,7 @@ void sift(int* array, int node, int length) } } -void heapsort(int* array, int length) +void heapsort2(int* array, int length) { int i = 0; int temp_value = 0; diff --git a/heapsort.h b/heapsort.h index 26b2349..9880bc1 100644 --- a/heapsort.h +++ b/heapsort.h @@ -1,7 +1,7 @@ #ifndef __HEAPSORT__ #define __HEAPSORT__ -void heapsort(int* array, int length); +void heapsort2(int* array, int length); void generate_array(int* array, int length); void print_array(int* array, int length); diff --git a/student_rank b/student_rank new file mode 100755 index 0000000000000000000000000000000000000000..5c3008fb202e58f3ed5bf6b0723cdbd4846270f0 GIT binary patch literal 52336 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 literal 0 HcmV?d00001 diff --git a/student_rank.c b/student_rank.c index af84003..c6dc75a 100644 --- a/student_rank.c +++ b/student_rank.c @@ -55,7 +55,6 @@ int find_rank_student(int student_grade, int* grades_array, int students_number) { int position = -1; int i = 0; - bubblesort(grades_array,students_number); for(i = students_number-1; i >= 0; i--) { if(grades_array[i] == student_grade) diff --git a/student_rank.dSYM/Contents/Info.plist b/student_rank.dSYM/Contents/Info.plist new file mode 100644 index 0000000..551d405 --- /dev/null +++ b/student_rank.dSYM/Contents/Info.plist @@ -0,0 +1,20 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleIdentifier + com.apple.xcode.dsym.student_rank + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + dSYM + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/student_rank.dSYM/Contents/Resources/DWARF/student_rank b/student_rank.dSYM/Contents/Resources/DWARF/student_rank new file mode 100644 index 0000000000000000000000000000000000000000..e4a1f5463d9bb765a6b91131b4b199941268605a GIT binary patch literal 12950 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 literal 0 HcmV?d00001 diff --git a/student_rank.dSYM/Contents/Resources/Relocations/aarch64/student_rank.yml b/student_rank.dSYM/Contents/Resources/Relocations/aarch64/student_rank.yml new file mode 100644 index 0000000..d2e5977 --- /dev/null +++ b/student_rank.dSYM/Contents/Resources/Relocations/aarch64/student_rank.yml @@ -0,0 +1,22 @@ +--- +triple: 'arm64-apple-darwin' +binary-path: student_rank +relocations: + - { offsetInCU: 0x26, offset: 0x26, size: 0x8, addend: 0x0, symName: _generate_grades, symObjAddr: 0x0, symBinAddr: 0x10000348C, symSize: 0x88 } + - { offsetInCU: 0x52, offset: 0x52, size: 0x8, addend: 0x0, symName: _generate_grades, symObjAddr: 0x0, symBinAddr: 0x10000348C, symSize: 0x88 } + - { offsetInCU: 0xA0, offset: 0xA0, size: 0x8, addend: 0x0, symName: _generate_ranks, symObjAddr: 0x88, symBinAddr: 0x100003514, symSize: 0xC4 } + - { offsetInCU: 0xFC, offset: 0xFC, size: 0x8, addend: 0x0, symName: _free_array, symObjAddr: 0x14C, symBinAddr: 0x1000035D8, symSize: 0x68 } + - { offsetInCU: 0x13C, offset: 0x13C, size: 0x8, addend: 0x0, symName: _print_student_array, symObjAddr: 0x1B4, symBinAddr: 0x100003640, symSize: 0xA4 } + - { offsetInCU: 0x18A, offset: 0x18A, size: 0x8, addend: 0x0, symName: _find_rank_student, symObjAddr: 0x258, symBinAddr: 0x1000036E4, symSize: 0xAC } + - { offsetInCU: 0x1EA, offset: 0x1EA, size: 0x8, addend: 0x0, symName: _sort_students, symObjAddr: 0x304, symBinAddr: 0x100003790, symSize: 0x144 } + - { offsetInCU: 0x270, offset: 0x270, size: 0x8, addend: 0x0, symName: _main, symObjAddr: 0x448, symBinAddr: 0x1000038D4, symSize: 0x164 } + - { offsetInCU: 0x26, offset: 0x31C, size: 0x8, addend: 0x0, symName: _print_array, symObjAddr: 0x0, symBinAddr: 0x100003A38, symSize: 0xB4 } + - { offsetInCU: 0x33, offset: 0x329, size: 0x8, addend: 0x0, symName: _print_array, symObjAddr: 0x0, symBinAddr: 0x100003A38, symSize: 0xB4 } + - { offsetInCU: 0x54, offset: 0x34A, size: 0x8, addend: 0x0, symName: _print_array.count, symObjAddr: 0xC3C, symBinAddr: 0x100008004, symSize: 0x0 } + - { offsetInCU: 0x9D, offset: 0x393, size: 0x8, addend: 0x0, symName: _generate_array, symObjAddr: 0x2F0, symBinAddr: 0x100003D28, symSize: 0xAC } + - { offsetInCU: 0xBE, offset: 0x3B4, size: 0x8, addend: 0x0, symName: _generate_array.first_call, symObjAddr: 0x3B4, symBinAddr: 0x100008000, symSize: 0x0 } + - { offsetInCU: 0xF2, offset: 0x3E8, size: 0x8, addend: 0x0, symName: _sift, symObjAddr: 0xB4, symBinAddr: 0x100003AEC, symSize: 0x150 } + - { offsetInCU: 0x16A, offset: 0x460, size: 0x8, addend: 0x0, symName: _heapsort2, symObjAddr: 0x204, symBinAddr: 0x100003C3C, symSize: 0xEC } + - { offsetInCU: 0x26, offset: 0x4D9, size: 0x8, addend: 0x0, symName: _bubblesort, symObjAddr: 0x0, symBinAddr: 0x100003DD4, symSize: 0xE8 } + - { offsetInCU: 0x33, offset: 0x4E6, size: 0x8, addend: 0x0, symName: _bubblesort, symObjAddr: 0x0, symBinAddr: 0x100003DD4, symSize: 0xE8 } +...