Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdlib.h>
- #include <stdio.h>
- #include <ctype.h>
- #include <math.h>
- #include <stdbool.h>
- #include <time.h>
- #define MAX 100
- int avsluta() {
- printf("\n\tVi ses\n\n");
- return 0;
- }
- /* Funktion för att fylla datamängden talrad med slumptal */
- int slumpatal(int talrad[]) {
- int r;
- srand(time(NULL));
- for (r = 0; r < MAX; ++r) {
- talrad[r]=rand()%901;
- }
- printf("\tTalen är nu slumpade!");
- printf("\n");
- return 0;
- }
- /* Funktion för att slumpa tal */
- int skrivut(int talrad[]){
- int r;
- for (r = 0; r < MAX; ++r) {
- printf("%d \t",talrad[r]);
- if (r%10==9) printf("\n\n");
- }
- return 0;
- }
- /* Funktion för att sortera tal*/
- int sortera(int talrad[]) {
- bool swapped;
- do {
- int i;
- swapped = false;
- for (i = 0; i < MAX - 1; i = i + 1)
- if (talrad[i] > talrad[i + 1]) {
- int temp = talrad[i];
- talrad[i] = talrad[i + 1];
- talrad[i + 1] = temp;
- swapped = true;
- }
- } while (swapped == true);
- printf("\tTalen är nu sorterade! Tryck 2 för att se följden.\n");
- return 0;
- }
- /* Funktion för att räkna ut median, högsta och lägsta värde*/
- int median (int talrad[]){
- double median = ((talrad[49]+talrad[50])/2);
- printf("\tMinsta värdet är: %d\n", talrad[0]);
- printf("\tStörsta värdet är: %d\n", talrad[99]);
- printf("\tMedianen är: %.2f\n", median) ;
- return 0;
- }
- /* Funktion för att söka tal */
- int sok(int talrad[]){
- int tal,r,k,i,hittat;
- printf("\tSkriv in ett tal som du vill hitta i tabellen:\n\n\t");
- scanf("%d",&tal);
- i=0;
- hittat = 0;
- do{
- for (r = 0; r < 10; ++r) {
- for (k = 0; k < 10; ++k) {
- if (talrad[i] ==tal){
- printf("\n\tTalet finns på rad %d, kolumn %d\n\n",r+1,k+1);
- hittat = 1;
- }
- i++;
- }
- }
- }
- while (i<9);
- if (hittat == 0)
- printf("\n\tTalet existerar inte i tabellen!\n\n");
- return 0;
- }
- /* Funktion som skriver ut meny på skärmen */
- int meny() {
- printf("\n\n");
- printf("\t0: Avsluta\n");
- printf("\t1: Slumpa tal\n");
- printf("\t2: Skriv ut talföljden i en tabell\n");
- printf("\t3: Sortera din talföljd\n");
- printf("\t4: Största, minsta värde samt median av talföljden\n");
- printf("\t5: Sök efeter ett tal i talföljden\n");
- /*rad för uppgift 6*/
- printf("\n\tGör ditt val: ");
- return 0;
- }
- int main() {
- int talrad[MAX]; /* Datamängd som ska bearbetas */
- int val, val1, val3; /* Hjälpvariabel för menystyrning */
- val1 = 0;
- val3=0;
- do {
- meny();
- scanf("%d", &val);
- printf("\n");
- if (val == 0){
- avsluta();
- }
- else if (val == 1){
- slumpatal(talrad);
- val1 = 1;
- val3=0;
- }
- else if (val == 2 && val1==1){
- skrivut(talrad);
- }
- else if (val == 3 && val1==1){
- sortera(talrad);
- val3=1;
- }
- else if (val == 4 && val1==1 && val3==1){
- median(talrad);
- }
- else if (val == 5 && val1==1 && val3==1) {
- sok(talrad);
- }
- /*Rad för uppgift 6*/
- else
- printf("\t\tOgiltgt val!\n\n");
- } while (val != 0);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement