skriv in ett heltal 5ggr

#include <stdio.h>
#include <stdlib.h>

#define N 5

int main(void){

    int histogram[N], i, j, tmp;
    
    for(i=0; i<N; i++){
        printf("Skriv ett heltal: ");
        scanf("%d", &histogram[i]);
    }
    
    printf("\n");
    
    for(i=N-1; i>=0; i--){
        printf("%d", histogram[i]);
        printf("\n");
    }
    
    for(i=0;i<N;i++){
        for(j=0;j<N-i-1;j++){
            if(histogram[j]>histogram[j+1]){
                tmp=histogram[j];
                histogram[j]=histogram[j+1];
                histogram[j+1]=tmp;
            }
        }
    }
    
    printf("\nMinst: %d \nStörst: %d",histogram[0],histogram[N-1]);
    printf("\n\n");
    
    getch();
    return(0);
}

vilken bokstav börjar ordet med?

#include<stdio.h>
#include<conio.h>
#include<stdlib.h>

int main(void){
    char word[25]; // plats där man kan spara 25 tecken
    int tecknetvarnio = 0; //Andvänds för att hoppa ut ur loopen
   
    while(!tecknetvarnio)
    {
       scanf("%s", word);
       printf("\nordet %s börjar med bokastaven ", word);
       printf("%c\n", word[0]);
   
       if (word[0]== '9')
       {
          tecknetvarnio = 1;
       }
    }
    printf("Knight Fhur äger dig!");
   getch();
    return 0;
   
   
    }

antal gånger ett kast kommit ***

#include <stdlib.h>
#include <stdio.h>
#include <time.h>

int main (void){
    int kast[11] = { 0 }; //vi har gjort 11st arrayer och säger att det ska börja på noll
    int antal, i, j;
    
    printf ("Antal kast"); // här skriver vi ut antal kast
    scanf ("%d",&antal);
    printf ("\n");
    
    srand(time(NULL)); //slumpar talen tidsenligt
    
    for (i=0;i<antal;i++) //här säger vi åt den att den inte ska börja på noll utan på noll+1 dvs. 1
        kast [rand()%6+rand()%6]++; // här säger vi åt den att tärningskasten ska börja på noll+1
    
    for (i=0;i<11;i++){
        printf("%d\t",i+2);
        for(j=0;j<kast[i];j++)
           printf("*"); //här skriver vi ut stjärnorna som ska symbolisera antal gånger ett visst tal uppkommit
        printf("\n"); //radbrytning
    }
        
        
    
 
    
    
    getchar();
    return 0;
    
    }

gissa ett tal mellan 1 och hundra

#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<time.h> //slumtalsfunktion
int main(void){
   
    int max= 100;
    int min= 0;
    int gissning ;
    int antal=0;
    int slumtal;
   
    srand(time(0));  //startar slumtals funktionen
   
do{
    printf("Gissa tal mellan 1 och 100 ");
    slumtal=rand()%max+1;
    do {
    scanf("%d",&gissning);
   
    if(gissning>slumtal)
    printf ("för högt! ");
   
    if(gissning<slumtal)
    printf("för lågt! ");
   
    antal++;
   
    }while(gissning!=slumtal);
   
    printf ("Wihoo ÄNTLIGEN, det tog dig %d gissningar", antal);
   
    printf(" Vill du spela igen? 0 avslutar " );
    scanf("%d",&gissning);
}while (gissning!=0);
 
 
 
 
    getchar();
   
    return 0;
   
   
    }

hur många dagar innan 1 miljon

#include <stdio.h>
#include <conio.h>
int main (void){
int b;
float a,c;
printf("Hur många dagar kommer det ta innan han är uppe i 1 miljon?");

lön=0.01,a;
dag=1,b;
total=0,c;

if (lön=lön*2);
do printf ("sant/n");

if (1000000<=%d);
do printf ("falskt/n");


a=a*2;
b=B+1;
c=c+a;





 getchar();
}

  

alla i samma

#include<stdio.h>
#include<conio.h>
#include<string.h>
#include<stdlib.h>

#define thisYear 2009
#define thisMonth 03
#define thisDay 20




// ****** UPG 1, funktion som ska räkna ut hur gammal man är. ******//


int getageinyear(int year[], int month[], int day[]){
    int a,b,c;
    
    a=year[0]*10*10*10+year[1]*10*10+year[2]*10+year[3]; //=1987
    b=month[0]*10+month[1];                              //=01
    c=day[0]*10+day[1];                                  //=28
    
    a=thisYear-a;
    b=thisMonth-b;
    c=thisDay-c;
    
    if (b<0) a=a-1;
    if (b==0)
       if(c<=0) a--;
              
      return a;  
    }



//****** UPG 2, kollar kontrollsiffrorna i personnumret ******//


int GetInfo(int number[], char str[]){
    int a;

    a=number[0]*10+number[1];

    if (a<=13) {
        strcpy(str,"stockholms stad/län");
        } else if (a<=15){ strcpy(str, "Uppsala län");
        } else if (a<=18){ strcpy(str, "Södermanlands län");
        } else if (a<=23){ strcpy(str, "Östergötlands län");
        } else if (a<=26){ strcpy(str, "Jönköpings län");
        } else if (a<=28){ strcpy(str, "Kronobergs län");
        } else if (a<=31){ strcpy(str, "Kalmar län");
        } else if (a==32){ strcpy(str, "Gotlands län");
        } else if (a<=34){ strcpy(str, "Blekinge län");
        } else if (a<=38){ strcpy(str, "Kristianstads län");
        } else if (a<=45){ strcpy(str, "Malmöhus län");
        } else if (a<=47){ strcpy(str, "Hallands län");
        } else if (a<=54){ strcpy(str, "Bohus-/Göteborgs län");
        } else if (a<=58){ strcpy(str, "Älvsborgs län");
        } else if (a<=61){ strcpy(str, "Skaraborgs län");
        } else if (a<=64){ strcpy(str, "Värmlands län");
        } else if (a<=68){ strcpy(str, "Örebro län");
        } else if (a<=70){ strcpy(str, "Västmanlands län");
        } else if (a<=73){ strcpy(str, "Kopparbergs län");
        } else if (a==74){ strcpy(str, "Adopterade/utl.födda m.fl.");
        } else if (a<=77){ strcpy(str, "Gävleborgs län");
        } else if (a<=81){ strcpy(str, "Västernorrlands län");
        } else if (a<=84){ strcpy(str, "Jämtlands län");
        } else if (a<=88){ strcpy(str, "Västerbottens län");
        } else if (a<=92){ strcpy(str, "Norrbottens län");
        } else if (a<=99){ strcpy(str, "Reservsiffror + invandrare");
        }

        if (number[2]%2==0)
               return 1;
           else return -1;
}



/* delar upp personnr från FUNKTION 1*/


int uppdelning(int year[], int month[], int day[], int number[], char str[]){
    int len= 0;
    len = strlen(str);
    
    
    if(len==10){                            //ååmmddxxxx
          year[0] = 1;
          year[1] = 9;
          year[2] = str[0] - 48;
          year[3] = str[1] - 48;      
          
          month[0]=str[2] -48;                
          month[1]=str[3] -48;
          
          day[0]=str[4] -48;
          day[1]=str[5] -48;      
          
          number[0]=str[6] -48;
          number[1]=str[7] -48;
          number[2]=str[8] -48;
          number[3]=str[9] -48;
                }
                
    else if (len==12){                        //ååååmmddxxxx
          year[0] = str[0] - 48;
          year[1] = str[1] - 48;
          year[2] = str[2] - 48;
          year[3] = str[3] - 48;      
          
          month[0]=str[4] -48;                
          month[1]=str[5] -48;
          
          day[0]=str[6] -48;
          day[1]=str[7] -48;      
          
          number[0]=str[8] -48;
          number[1]=str[9] -48;
          number[2]=str[10] -48;
          number[3]=str[11] -48;
          }
          
          
          
     else if (len==11){                       //ååmmdd-xxxx eller ååmmdd+xxxx
          if (str[6]=='-'){                   //om tecken [6] är ett minus '-'
             if ((str[0]-48)==0){              // och [0] är 0
                         year[0] = 2;         // är man född på 2000-talet
                         year[1] = 0;
                         }
             else {
                  year[0] = 1;                //om [0] är 1 eller högre är man född på 1900-talet
                  year[1] = 9;
                  }
             }
             
          else {                              //om tecken [6] är ett plus '+'
               if ((str[0]-48) == 0){       
                  year[0] = 1;
                  year[1] = 9;
                  }
                  
                  else {
                  year[0] = 1;
                  year[1] = 8;
                  }
                           
             }                            
          
          year[2] = str[0] - 48;
          year[3] = str[1] - 48;      
          
          month[0]=str[2] -48;                
          month[1]=str[3] -48;
          
          day[0]=str[4] -48;
          day[1]=str[5] -48;      
          
          number[0]=str[7] -48;
          number[1]=str[8] -48;
          number[2]=str[9] -48;
          number[3]=str[10] -48;
         }
    
    else if (len==13){                        //ååååmmdd-xxxx
          year[0] = str[0] - 48;
          year[1] = str[1] - 48;
          year[2] = str[2] - 48;
          year[3] = str[3] - 48;      
          
          month[0]=str[4] -48;                
          month[1]=str[5] -48;
          
          day[0]=str[6] -48;
          day[1]=str[7] -48;      
          
          number[0]=str[9] -48;
          number[1]=str[10] -48;
          number[2]=str[11] -48;
          number[3]=str[12] -48;
          }   
}



          //******* FUNKTION 1 ******//

int checkValid1(char nr[], int len) {         //funktion som kollar om personnr stämmer överrens med
    int i;                                    // exemplena ååmmddxxxx eller ååååmmddxxxx
    char temp[2];                       
    temp[1]='\0';
    
    if (len==10 || len==12)                   //om nr-längden är 10 lr 12 loopar vi:
    {
       for (i = 0; i < len; i++) {
           temp[0]=nr[i];
           int tal = atoi(temp);
           if (tal > 9)                       // "ASCII to integrate", kollar om det är siffror.
               return 0;                      // bokstaven A skulle t.ex. får värdet 65 och funktionen skulle
                }                             // returnera värdet 0 (falskt). Men 5 --> 5
          
        }else
        return 0;   
    
    
    return 1;
}



           //******* FUNKTION 2 ******//

int checkValid2(char nr[], int len) {         //funktion som kollar om personnr stämmer överrens med
    int i;                                    // exemplena ååmmdd-xxxx eller ååmmdd+xxxx
    char temp[2];                       
    temp[1]='\0';


    if (len==11)                   //om nr-längden är 11 loopar vi:
    {
       if (!(nr[6]=='+' || nr[6]=='-')) return 0;
                                   
                                   
       for (i = 0; i <6 ; i++) {
           temp[0]=nr[i];
           if (atoi(temp) > 9)              // "ASCII to integrate", kollar om det är siffror.
               return 0;                      // bokstaven A skulle t.ex. få värdet 65 och funktionen skulle
           }                                  // returnera värdet 0 (falskt). Men 5 --> 5
       for (i = 7; i <=10 ; i++) {
           temp[0]=nr[i];
           if (atoi(temp) > 9)  
               return 0;    
               }  
                   
       return 1;  
        
       
    } else
        return 0;   
    }
    



           //******* FUNKTION 3 ******//

int checkValid3(char nr[], int len) {         //funktion som kollar om personnr stämmer överrens med
    int i;                                    // exemplet ååååmmdd-xxxx
    char temp[2];                       
    temp[1]='\0';
    
    if (len==13 && nr[8]=='-')               //om nr-längden är 13 och tecken 9='-' loopar vi:
    {
       for (i = 0; i <= 7; i++) {
           temp[0]=nr[i];
           if (atoi(temp) > 9)             // "ASCII to integrate", är tecken 1-8 siffror?
               return 0;                      
           }    
       for (i = 9; i <= 12; i++) {  
           temp[0]=nr[i];
           if (atoi(temp) > 9)   
             return 0;
           }
       return 1;  
   }  else
        return 0;      
}




/**** funktion som kontrollerar månad och dagar ****/

int CheckPersonnummer(int year[], int month[], int day[], int number[]){
int yearnr, monthnr, daynr, kontroll=1;    
    
yearnr  =year[0]*1000+year[1]*100+year[2]*10+year[3];    //tusental  
monthnr =month[0]*10+month[1];                           //tiotal
daynr   =day[0]*10+day[1];                               //tiotal

if(monthnr<13){

    if((monthnr==1||monthnr==3||monthnr==5||monthnr==7||monthnr==8||monthnr==10||monthnr==12)&& (daynr>31))
    kontroll=0;

    if (monthnr==2 && daynr>28)            // Kontroll = 0 visar att nåt är fel                                                           
           {kontroll=0;}
    if (daynr>30)
           {kontroll=0;}
         
    
     else if (yearnr>2009) kontroll=0;           // är man född efter 2009 är nåt fel.
     
 
   printf("\n\nPersonnumret är ");
 
  if (kontroll==0) printf("inte ");          // har något blivit fel någonstans skrivs "inte" ut.

   printf("korrekt!!!!1\n\n");

  if (kontroll=1) return 1;                 // returnera 1 om personnumret var okej
     
     }
   else printf("\nFEL, DIN SOPA!\n\n");  
     
  return 0;                                  //returnera 0 om personnumret inte var okej
}





int readpersonnummer(int year[], int month[], int day[], int number[], char str[]) {
    char nr[20];
    int i = 0;
    int valid = 1;
    int len;
    int kontroll;                    //kontroll = kontrollsiffra. om kontroll=1 är personnumret okej.

    
    do{ printf("%s\n", "skriv in ett giltigt personnummer");          //skriv in ett giltigt personnummer
        scanf("%s",nr);               // läses in som 'nr'
        i++;                          // variabeln 'i' räknar upp (till 10)
      
      len = strlen(nr);               //strlen tar reda på längden på det vi läst in (nr)...
        
      
      kontroll=checkValid1(nr, len);               //skickar nr till funktion 1 för att jämföras med personnummersmodeller
         if (kontroll==0) {                        // om '0' returneras  
              kontroll=checkValid2(nr, len);       // kollar vi vidare i funktion 2
                                 
              if (kontroll==0){                    //  om '0' returneras             
               kontroll=checkValid3(nr, len);      // kollar vi vidare i funktion 3
                   
              }
         }
          if (kontroll==1){
                       
                uppdelning(year, month, day, number, nr);
                }
                
         kontroll= CheckPersonnummer(year,month,day,number);
         
    } while (kontroll==0 && i<10);  
    
    return kontroll;
}




void printIntArray(int a[], int len)
{
     int i;
     for (i = 0; i < len; i++)
     {
       printf("%d ", a[i]);
     }
     printf("\n");     
}




/**** Här delar vi upp personnumret i [åååå] [mm] [dd] [xxxx] ****/

void uppdelning2(int year[], int month[], int day[], int number[], char str[]){
    
          year[0] = str[0] - 48;
          year[1] = str[1] - 48;      
          year[2] = str[2] - 48;
          year[3] = str[3] - 48;  
          
          fprintf(stderr, "year: %d, %d, %d, %d\n", year[0], year[1], year[2], year[3]);    
          
          month[0]=str[4] -48;                
          month[1]=str[5] -48;
          
          day[0]=str[6] -48;
          day[1]=str[7] -48;      
          
          number[0]=str[8] -48;
          number[1]=str[9] -48;
          number[2]=str[10] -48;
          number[3]=str[11] -48;
          
          
}




/*** Scanna in ****/
int readpersonnummer2(int year[], int month[], int day[], int number[], char str[]) {
   
    printf("%s\n", "skriv in ett giltigt personnummer");            //skriv in ett giltigt personnummer
    scanf("%s", str);  
   
    uppdelning2(year, month, day, number, str);      //anropar funktionen "uppdelning"
   
    printf("%d", CheckPersonnummer( year, month, day, number));
}



int kontrollnr(int year[], int month[], int day[], int number[]) {
  int kontroll=0;  
  int siffror[10];
  int sum=0;
  int n; //Räknare
 
  siffror[0]=year[2]*2;               // läste på wikipedia hur luhm-algoritmen funkar...
  siffror[1]=year[3];                 
  siffror[2]=month[0]*2;              
  siffror[3]=month[1];                
  siffror[4]=day[0]*2;
  siffror[5]=day[1];
  siffror[6]=number[0]*2;
  siffror[7]=number[1];  
  siffror[8]=number[2]*2;  
  siffror[9]=number[3];

  for(n=0;n<10;n++){                   //Om ett tal är större än 9 subtraherar vi med 9. tex 10 1+0 = 1 dvs 10-9.
    if(siffror[n]>9) siffror[n]-=9;    
    sum+=siffror[n];
  }
 
  if(sum%10==0)                       //om kontrollsiffrorna är jämt delbara med 10 är kontrollsiffrorna korrekta  
      kontroll=1;
    
  return kontroll;
}




int main(void){
   int year[4];
   int month [2];
   int day [2];
   int number[4];
   char pnr[10];
   char str[20];

      readpersonnummer(year,month,day,number,str);
      printIntArray(year, 4);
      printIntArray(month, 2);
      printIntArray(day, 2);
      printIntArray(number, 4);
      
      printf("\nålder: %d\n\n\n", getageinyear(year, month, day));
      printf("kvinna = [1]\nman   =  [-1] \nDu blev...    [%d] \n", GetInfo(number, str));
      printf("\n%s\n\n\n",str);
     
     printf("Kontrollnummer rätt (1), fel (0) : %d", kontrollnr(year, month, day, number));
     
    
    getch();
    return 0;
    }

samma som 3 men den kollar att det inte är ex. månad 23

#include<stdio.h>
#include<conio.h>
#include <stdlib.h>
#include<string.h>



void printIntArray2(int a[], int len)
{
     int i;
     for (i = 0; i < len; i++)
     {
       printf("%d", a[i]);
     }
     printf("\n");  }   


/**** Här delar vi upp personnumret i [åååå] [mm] [dd] [xxxx] ****/

void uppdelning(int year[], int month[], int day[], int number[], char str[]){
    
          year[0] = str[0] - 48;
          year[1] = str[1] - 48;      
          year[2] = str[2] - 48;
          year[3] = str[3] - 48;      
          
          month[0]=str[4] -48;                
          month[1]=str[5] -48;
          
          day[0]=str[6] -48;
          day[1]=str[7] -48;      
          
          number[0]=str[8] -48;
          number[1]=str[9] -48;
          number[2]=str[10] -48;
          number[3]=str[11] -48;
          
          
}




/*** Scanna in ****/
int readpersonnummer(int year[], int month[], int day[], int number[], char str[]) {
    char nr[20];
   
    printf("%s\n", str);            //skriv in ett giltigt personnummer
    scanf("%s", nr);  
   
    uppdelning(year, month, day, number, nr);      //anropar funktionen "uppdelning"
   
    printf("%d", CheckPersonnummer( year, month, day, number));
}







/**** funktion som kontrollerar månad och dagar ****/

int CheckPersonnummer(int year[], int month[], int day[], int number[]){
int yearnr, monthnr, daynr, kontroll=1;    
 
 

    
yearnr  =year[0]*1000+year[1]*100+year[2]*10+year[3];    //SAMMA som nedan    
monthnr =month[0]*10+month[1];                           //gör om till 10-talssystemet
daynr   =day[0]*10+day[1];                               //gör om till 10-talssystem


if((monthnr==1||monthnr==3||monthnr==5||monthnr==7||monthnr==8||monthnr==10||monthnr==12)&& (daynr>31))
kontroll=0;



     if (monthnr==2 && daynr>28)            // Kontroll = 0 visar att nåt är fel                                                           
        {kontroll=0;}
     if (daynr>30)
        {kontroll=0;}
         
    
else if (yearnr>2009) kontroll=0;               // är man född efter 2009 är nåt fel.
    
printf("personnumret är ");

if (kontroll==0) printf("inte ");          // har något blivit fel någonstans skrivs "inte" ut.

printf("korrekt!!");

if (kontroll=1) return 1;                 // returnera 1 om personnumret var okej
         
return 0;                                  //returnera 0 om personnumret inte var okej
}




/****** MAIN ******/

int main(void){
   int year[4];
   int month [2];
   int day [2];
   int number[4];
   char *str = "skriv in ett giltigt personnummer enligt modellen ååååmmddxxxx";
      
      
      
      readpersonnummer(year,month,day,number,str);       //anropar funktionen "readpersonnummer"


    getch();
    return 0;
}

skriv in ett giltigt personnummer

#include<stdio.h>
#include<conio.h>
#include<string.h>
#include<stdlib.h>



/* delar upp personnr från FUNKTION 1*/


int uppdelning(int year[], int month[], int day[], int number[], char str[]){
    int len= 0;
    len = strlen(str);
    
    
    if(len==10){                            //ååmmddxxxx
          year[0] = 1;
          year[1] = 9;
          year[2] = str[0] - 48;
          year[3] = str[1] - 48;      
          
          month[0]=str[2] -48;                
          month[1]=str[3] -48;
          
          day[0]=str[4] -48;
          day[1]=str[5] -48;      
          
          number[0]=str[6] -48;
          number[1]=str[7] -48;
          number[2]=str[8] -48;
          number[3]=str[9] -48;
                }
                
    else if (len==12){                        //ååååmmddxxxx
          year[0] = str[0] - 48;
          year[1] = str[1] - 48;
          year[2] = str[2] - 48;
          year[3] = str[3] - 48;      
          
          month[0]=str[4] -48;                
          month[1]=str[5] -48;
          
          day[0]=str[6] -48;
          day[1]=str[7] -48;      
          
          number[0]=str[8] -48;
          number[1]=str[9] -48;
          number[2]=str[10] -48;
          number[3]=str[11] -48;
          }
          
          
     else if (len==11){                       //ååmmdd-xxxx eller ååmmdd+xxxx
          if (str[6]=='-'){                   //om tecken [6] är ett minus '-'
             if ((str[0]-48)==0){              // och [0] är 0
                         year[0] = 2;         // är man född på 2000-talet
                         year[1] = 0;
                         }
             else {
                  year[0] = 1;                //om [0] är 1 eller högre är man född på 1900-talet
                  year[1] = 9;
                  }
             }
             
          else {                              //om tecken [6] är ett plus '+'
               if ((str[0]-48) == 0){       
                  year[0] = 1;
                  year[1] = 9;
                  }
                  
                  else {
                  year[0] = 1;
                  year[1] = 8;
                  }
                           
             }                            
          
          year[2] = str[0] - 48;
          year[3] = str[1] - 48;      
          
          month[0]=str[2] -48;                
          month[1]=str[3] -48;
          
          day[0]=str[4] -48;
          day[1]=str[5] -48;      
          
          number[0]=str[7] -48;
          number[1]=str[8] -48;
          number[2]=str[9] -48;
          number[3]=str[10] -48;
         }
    
    else if (len==13){                        //ååååmmdd-xxxx
          year[0] = str[0] - 48;
          year[1] = str[1] - 48;
          year[2] = str[2] - 48;
          year[3] = str[3] - 48;      
          
          month[0]=str[4] -48;                
          month[1]=str[5] -48;
          
          day[0]=str[6] -48;
          day[1]=str[7] -48;      
          
          number[0]=str[9] -48;
          number[1]=str[10] -48;
          number[2]=str[11] -48;
          number[3]=str[12] -48;
          }
    
}


int readpersonnummer(int year[], int month[], int day[], int number[], char str[]) {
    char nr[20];
    int i = 0;
    int valid = 1;
    int len;
    int sked;


    
    do{ printf("%s\n", str);          //skriv in ett giltigt personnummer
        scanf("%s",nr);               // läses in som 'nr'
        i++;                          // variabeln 'i' räknar upp (till 10)
      
      len = strlen(nr);               //strlen tar reda på längden på det vi läst in (nr)...
      
    
      
      
      kontroll=checkValid1(nr, len);               //skickar nr till funktion 1 för att jämföras med personnummersmodeller
         if (kontroll==0) {                        // om '0' returneras  
              kontroll=checkValid2(nr, len);       // kollar vi vidare i funktion 2
                                 
              if (sked==0){                    //  om '0' returneras             
               kontroll=checkValid3(nr, len);      // kollar vi vidare i funktion 3
                   
              }
         }
          if (kontroll==1){
                uppdelning(year, month, day, number, nr);
                }
               
    } while (kontroll==0 && i<10);
    
    
    return kontroll;
}





          //******* FUNKTION 1 ******//

int checkValid1(char nr[], int len) {         //funktion som kollar om personnr stämmer överrens med
    int i;                                    // exemplena ååmmddxxxx eller ååååmmddxxxx
    char temp[2];                       
    temp[1]='\0';
    
    if (len==10 || len==12)                   //om nr-längden är 10 lr 12 loopar vi:
    {
       for (i = 0; i < len; i++) {
           temp[0]=nr[i];
           int tal = atoi(temp);
           if (tal > 9)              // "ASCII to integrate", kollar om det är siffror.
               return 0;                      // bokstaven A skulle t.ex. får värdet 65 och funktionen skulle
                }                            // returnera värdet 0 (falskt). Men 5 --> 5
          
        }else
        return 0;   
    
    
    return 1;
}


           //******* FUNKTION 2 ******//

int checkValid2(char nr[], int len) {         //funktion som kollar om personnr stämmer överrens med
    int i;                                    // exemplena ååmmdd-xxxx eller ååmmdd+xxxx
    char temp[2];                       
    temp[1]='\0';


    if (len==11)                   //om nr-längden är 11 loopar vi:
    {
       if (!(nr[6]=='+' || nr[6]=='-')) return 0;
                                   
                                   
       for (i = 0; i <6 ; i++) {
           temp[0]=nr[i];
           if (atoi(temp) > 9)              // "ASCII to integrate", kollar om det är siffror.
               return 0;                      // bokstaven A skulle t.ex. få värdet 65 och funktionen skulle
           }                                  // returnera värdet 0 (falskt). Men 5 --> 5
       for (i = 7; i <=10 ; i++) {
           temp[0]=nr[i];
           if (atoi(temp) > 9)  
               return 0;    
               }  
                   
       return 1;  
        
       
    } else
        return 0;   
    }
    



           //******* FUNKTION 3 ******//

int checkValid3(char nr[], int len) {         //funktion som kollar om personnr stämmer överrens med
    int i;                                    // exemplet ååååmmdd-xxxx
    char temp[2];                       
    temp[1]='\0';
    
    if (len==13 && nr[8]=='-')               //om nr-längden är 13 och tecken 9='-' loopar vi:
    {
       for (i = 0; i <= 7; i++) {
           temp[0]=nr[i];
           if (atoi(temp) > 9)             // "ASCII to integrate", är tecken 1-8 siffror?
               return 0;                      
           }    
       for (i = 9; i <= 12; i++) {  
           temp[0]=nr[i];
           if (atoi(temp) > 9)   
             return 0;
           }
       return 1;  
   }  else
        return 0;   
    
}




void printIntArray(int a[], int len)
{
     int i;
     for (i = 0; i < len; i++)
     {
       printf("%d ", a[i]);
     }
     printf("\n");     
}





int main(void){
   int year[4];
   int month [2];
   int day [2];
   int number[4];
   char *str = "skriv in ett giltigt personnummer";
      
      readpersonnummer(year,month,day,number,str);
      printIntArray(year, 4);
      printIntArray(month, 2);
      printIntArray(day, 2);
      printIntArray(number, 4);
      


    getch();
    return 0;
}


kön och län

#include<stdio.h>
#include<conio.h>
#include<string.h>

#define thisYear 2009
#define thisMonth 03
#define thisDay 20


//* UPPGIFT 2, kollar kontrollsiffrorna i personnumret *//

int GetInfo(int number[], char str[]){
    int a;

    a=number[0]*10+number[1];

    if (a<=13) {
        strcpy(str,"stockholms stad/län");
        } else if (a<=15){ strcpy(str, "Uppsala län");
        } else if (a<=18){ strcpy(str, "Södermanlands län");
        } else if (a<=23){ strcpy(str, "Östergötlands län");
        } else if (a<=26){ strcpy(str, "Jönköpings län");
        } else if (a<=28){ strcpy(str, "Kronobergs län");
        } else if (a<=31){ strcpy(str, "Kalmar län");
        } else if (a==32){ strcpy(str, "Gotlands län");
        } else if (a<=34){ strcpy(str, "Blekinge län");
        } else if (a<=38){ strcpy(str, "Kristianstads län");
        } else if (a<=45){ strcpy(str, "Malmöhus län");
        } else if (a<=47){ strcpy(str, "Hallands län");
        } else if (a<=54){ strcpy(str, "Bohus-/Göteborgs län");
        } else if (a<=58){ strcpy(str, "Älvsborgs län");
        } else if (a<=61){ strcpy(str, "Skaraborgs län");
        } else if (a<=64){ strcpy(str, "Värmlands län");
        } else if (a<=68){ strcpy(str, "Örebro län");
        } else if (a<=70){ strcpy(str, "Västmanlands län");
        } else if (a<=73){ strcpy(str, "Kopparbergs län");
        } else if (a==74){ strcpy(str, "Adopterade/utl.födda m.fl.");
        } else if (a<=77){ strcpy(str, "Gävleborgs län");
        } else if (a<=81){ strcpy(str, "Västernorrlands län");
        } else if (a<=84){ strcpy(str, "Jämtlands län");
        } else if (a<=88){ strcpy(str, "Västerbottens län");
        } else if (a<=92){ strcpy(str, "Norrbottens län");
        } else if (a<=99){ strcpy(str, "Reservsiffror + invandrare");
        }

        if (number[2]%2==0)
               return 1;
           else return -1;
}


int main(void){


      char *date = "19870128-8946";
      char str[30];
      
      int year[4]={1,9,8,7};
      int month [2]={0,1};
      int day [2]={2,8};
      int number[4]={8,9,4,9};
      

    printf("Kvinna(1) eller man(-1): Du blev %d\n\n", GetInfo(number, str));
    printf("%s", str);
    
    getch();
    return 0;
    }

SKRIVER UT ÅLDERN ex. 22

#include<stdio.h>
#include<conio.h>
#include<string.h>

#define thisYear 2009
#define thisMonth 03
#define thisDay 20



//* UPPGIFT 1, funktionen räknar ut hur gammal man är*//

int getageinyear(int year[], int month[], int day[]){
    int a,b,c;
    
    a=year[0]*1000+year[1]*100+year[2]*10+year[3];          //=1987 (tusental)
    b=month[0]*10+month[1];                                 //=01(tiotal)
    c=day[0]*10+day[1];                                      //=28(tiotal)
                                                         
    a=thisYear-a;
    b=thisMonth-b;
    c=thisDay-c;
    
    if (b<0) a=a-1;
    if (b==0)
       if(c<=0) a--;
              
      return a;  
    }


int main(void){


      char *date = "19870128-8949";
      char str[30];
      
      int year[4]={1,9,8,7};
      int month [2]={0,1};
      int day [2]={2,8};
      int number[4]={8,9,4,9};

      

    
    printf("%d \n\n",getageinyear(year, month, day));

    
    getch();
    return 0;
    }

Välkommen till min nya blogg!


RSS 2.0