Deloppgave 1

Dependencies:   mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers main.cpp Source File

main.cpp

00001 #include "mbed.h"
00002 
00003 Serial pc(USBTX, USBRX);
00004 
00005 int numbers[100];
00006 
00007 int get_seed();
00008 int get_number_of_elements();
00009 void fill_array(int seed, int arr[], int len);
00010 void sort_array(int arr[], int len);
00011 void print_array(int arr[], int len);
00012 int print();
00013 
00014 int main()
00015 {
00016     int mySeed, numElements;
00017     mySeed = print();
00018     numElements = get_number_of_elements();
00019     fill_array(mySeed, numbers, numElements);
00020     print_array(numbers, numElements);
00021     sort_array(numbers, numElements);
00022     print_array(numbers, numElements);
00023 
00024     return 0;
00025 }
00026 
00027 int print()
00028 {
00029     int tall;
00030     pc.printf("Skriv inn et heltall mellom 1 og 10.000 ");
00031     pc.scanf("%d", &tall);
00032     return tall;
00033 }
00034 int get_number_of_elements()
00035 {
00036     int tall;
00037     pc.printf("Skriv inn antall elementer, tabellen skal inneholde ");
00038     pc.scanf("%d", &tall);
00039     return tall;
00040 }
00041 void fill_array(int seed, int arr[], int len)
00042 {
00043     srand(seed);
00044     for (int i = 0; i < len; i++) {
00045         arr[i] = rand()%101;
00046     }
00047 }
00048 
00049 void print_array(int arr[], int len)
00050 {
00051 
00052     for (int i = 0; i < len; i++) {
00053         pc.printf ("%5d", arr[i]);
00054         if((i % 10) == 9)
00055             pc.printf("\n");
00056     }
00057     pc.printf("\n");
00058 
00059 }
00060 
00061 
00062 void sort_array(int arr[], int len)
00063 {
00064     int sortering;
00065     for(int i=0; i<len; i++) {
00066         for(int j=i+1; j < len; j++) {
00067             if(arr[i]>arr[j]) {
00068                 sortering=arr[i];
00069                 arr[i] = arr[j];
00070                 arr[j] = sortering;
00071             }
00072         }
00073     }
00074 }
00075 
00076 
00077 
00078 
00079 
00080 
00081