Siruri

Embed Size (px)

DESCRIPTION

liceu, prezentare informatica, siruri de caractere

Citation preview

  • Tipuri

    structurate

    de date

    i r u r i d e c a r a c t e r e

  • Sumar

    1.

    2.

    3.

    4.

    5.

    6.

    7. webografie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

    2

  • generale

    identificarea datelor care intervin ntr-o a dintre

    acestea

    elaborarea algoritmilor de rezolvare a problemelor

    aplicarea algoritmilor fundamentali n prelucrarea datelor

    identificarea conexiunilor dintre societate

    specifice

    datelor

    prelucrarea datelor structurate

    alegerea structurii de date unei probleme

    elaborarea unui algoritm de rezolvare a unei probleme din aria

    a

    alegerea unui algoritm eficient de rezolvare a unei probleme

    identificarea informaticii n

    elaborarea implementarea unor algoritmi de rezolvare a unor

    probleme cotidiene

    3

  • 4

    Un de caractere:

    - este un tablou unidimensional (vector) de caractere;

    - o succesiune de caractere cuprins ntre ghilimele terminat cu caracterul NULL notat \ 0 ;

    - orice tip de caracter: mare, caracter

    special, delimitator, fiecare caracter fiind reprezentat prin codul ASCII.

    Un de caractere este o de date care este dintr-o

    de caractere, n care fiecare caracter se prin

    sa n cadrul .

    Exemplu: de caractere Limbajul C++ se poate reprezenta astfel:

    L i m b a j u l C + + \ 0

  • 5

    Fiecare caracter din setul de caractere al limbajului C++ se

    printr-un cod unic, numit codul ASCII al caracterului, un ntreg ntre 0 255 .

    n cadrul setului ASCII, codurile caracterelor sunt cum : - literele mari ncepnd cu 65 (A - 65, B - 66, ... , Z - 90) ;

    - literele mici ncepnd cu 97 (a 97, b 98, ... , z - 122 ) ;

    - cifrele ncepnd cu 48 ( 0 48, 1 49, ... , 9 - 57) .

    : ntre codul ASCII al litere mici codul ASCII al literei mari pereche este 32 .

    Exemplu: char c1,c 2;

    int x;

    c1='A' ;

    x=c 1+32; //conversie

    c2=x; //conversie

    cout

  • 6

    Declararea de caractere

    - vectorul de caractere trebuie declarat cu un caracter mai mult (caracterul NULL) dect cel mai mare pe care l poate ;

    - un de caractere poate fi definit ca un vector de caractere, n

    moduri: char nume[dimensiune] ;

    char *nume;

    unde nume este identificatorul variabilei de tip de caractere, iar

    dimensiune maxim de caractere ce pot fi memorate

    n (inclusiv caracterul NULL);

    char nume[dimensiune] ;

    // se un vector cu elemente de tip caracter;

    char *nume;

    // se un pointer tipul caracter;

    : caracterele vor ocupa consecutive n vector,

    ncepnd cu 0

  • 7

    Exemplul 1: char sir[ 20] ;

    - se un de caractere n care vor putea fi memorate maxim 19

    caractere;

    - variabila sir informatica reprezentarea n

    memoria este :

    unde: sir[ 0]=

    sir[ 1]= n

    sir[ 2]= f

    sir[ 10]= a

    - caracterul NULL \0 este automat de compilator;

    - lungimea de caractere este de de caractere (n exemplu este de 11);

    sir i n f o r m a t i c a \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

  • 8

    Exemplul 2: char s[ 5] ;

    - se un de caractere n care vor putea fi memorate maxim 4

    caractere;

    - variabila s algoritm reprezentarea n memoria

    este :

    s a l g o \ 0

    0 1 2 3 4

  • 9

    Exemplul 3: char a[ 15] ;

    - se un de caractere n care vor putea fi memorate maxim 14

    caractere;

    - de caractere a a fost la declararea lui, iar reprezentarea n

    memoria este :

    - se de caractere, nu mai este nevoie se

    precizeze lungimea a aceasta fiind de

    compilator: char a[] ;

    c a l c u l a t o r \ 0 \ 0 \ 0 \ 0 \ 0

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14

  • 10

    Citirea

    cin

    - la nivel de caracter;

    -

    a. Citirea la nivel de caracter (caracter cu caracter)

    cout numarul de caractere

    cin >>n;

    for( i =0;i< n;i ++)

    cin >>sir[ i ];

    sir[ i ]=NULL;

    - citirea de caractere se face caracter cu caracter trebuie caracterul NULL la de caractere.

    aractere

  • 11

    b. Citirea la nivelul irului de caractere

    cin >>sir;

    - n acest caz caracterul NULL este automat de compilator;

    - de citire de la se atunci cnd a fost introdus un caracter alb ( sau Enter );

    - pentru a citi caracterul se get care are

    forme.

    aractere

  • 12

    Forma 1: cin . get(sir,nr,ch) ;

    unde:

    sir este o de tip de caractere care se va citi;

    nr este o de tip ntreg maxim de

    caractere care vor fi citite, inclusiv caracterul NULL;

    ch este o de tip caracter care caracterul care

    ncheie citirea ;

    - al treilea parametru se implicit caracterul \ n

    generat de tasta Enter .

    Forma 2: cin . get() ;

    - o cin . get() cu parametri pentru a din

    fluxul de date ultimul caracter citit, care ar mpiedica efectuarea unei a

    doua de citire de la .

    aractere

  • 13

    Exemplul 1: char s1[ 10] ;

    cin >>s1;

    //dac introducem textul informatica Enter se

    n variabila s1 informati ;

    Exemplul 2: char s2[ 10] ;

    cin >>s2;

    //dac introducem textul informat Enter se n

    variabila s2 informat ;

    Exemplul 3: char s3[ 10] ;

    cin >>s3;

    //dac introducem textul info arena Enter se

    n variabila s3 info ;

    aractere

  • 14

    Exemplul 4: char s4[ 10] ;

    cin . get( s4, 10) ;

    //dac introducem textul informatica Enter se

    n variabila s4 informati ;

    Exemplul 5: char s5[ 10] ;

    cin . get ( s5, 5) ;

    //dac introducem textul informatica Enter se

    n variabila s5 info ;

    Exemplul 6: char s6[ 10] ;

    cin . get( s6, 10) ;

    //dac introducem textul info arena Enter se

    n variabila s6 info aren ;

    aractere

  • 15

    Exemplul 7: char s7[ 10] ;

    cin . get( s7, 10, ' $') ;

    //dac introducem textul informat $ Enter se n

    variabila s7 informat ;

    Exemplul 8: char s8[ 10] ;

    cin . get( s8, 10) ;

    //dac introducem textul info $arena Enter se

    n variabila s8 info $aren ;

    Exemplul 9: char s9[ 10] ;

    cin . get( s9, 9 \ ) ;

    //dac introducem textul info arena $ Enter se

    n variabila s9 info are ;

    aractere

  • 16

    Exemplul 10: char a[ 10], b[ 10] ;

    cin . get( a, 10) ;

    cin . get( b, 10) ;

    //dac introducem textul info Enter se n

    variabila a info i nu va putea fi citit al doilea ;

    Exemplul 11: char a[ 10], b[ 10] ;

    cin . get( a, 10) ;

    cin . get( ) ;

    cin . get( b, 10) ;

    //dac introducem textul info Enter apoi introducem

    arena Enter se n variabila a info n

    variabila b arena ;

    aractere

  • 17

    Exemplul 12: char a[ 10], b[ 10] ;

    cin . get( a, 10) ;

    cin . get( b, 10) ;

    //dac introducem textul info arena Enter se

    n variabila a info aren n variabila b a;

    aractere

  • 18

    Scrierea de caractere

    cout

    - la nivel de caracter;

    -

    a. Scrierea la nivel de caracter (caracter cu caracter)

    cin >>sir;

    i =0;

    while(sir[ i ]!=NULL)

    {

    cout

  • 19

    b. Scrierea la nivelul irului de caractere

    cout

  • 20

    Exemplul 1: char s1[ 10] ;

    cin >>s1;

    cout s2;

    cout s3;

    cout

  • 21

    1. STRLEN

    2. STRCPY

    3. STRNCPY

    4. STRCAT

    5. STRNCAT

    6. STRCMP

    7. STRNCMP

    8. STRICMP

    9. STRSET

    10. STRNSET

    11. STRLWR

    12. STRUPR

    13. TOUPPER

    14. TOLOWER

    15. STRCHR

    16. STRRCHR

    17. STRSTR

    18. STRREV

  • 22

    STRLEN

    strlen(sir)

    unde sir

    Exemplu: char s[21];

    int n;

    cin>>s;

    n=strlen(s);

    cout

  • 23

    STRCPY

    strcpy(sir1,sir2)

    unde sir1 sir2

    Exemplu: char a[21], b[21];

    cin >>a;

    strcpy ( b, a) ;

    cout

  • 24

    STRNCPY

    Copie un de caractere specificat, dintr-un de caractere n alt

    de caractere.

    strncpy (sir1,sir2,nr)

    unde sir 1 sir 2 sunt variabile de tip de caractere, iar nr

    este o de tip ntreg. : strlen (sir 2)>a;

    strncpy (b,a,4);

    b[4]=NULL;

    cout

  • 25

    STRCAT

    strcat (sir1,sir2 )

    unde sir1 sir2

    Exemplu: char a[21],b[21];

    cin >>a>>b;

    strcat ( a,b );

    cout

  • 26

    STRNCAT

    strncat(sir1,sir2,nr)

    unde sir 1 sir 2 sunt variabile de tip de caractere, iar nr

    este o de tip ntreg.

    Exemplu: char a[21],b[21];

    cin >>a>>b;

    strncat (a,b,3);

    cout

  • 27

    6 STRCMP

    Compar

    strcmp(sir1,sir2 )

    unde sir 1 sir 2 sunt variabile de tip de caractere.

    sir1 sir2

    Exemplu: char a[21],b[21];

    cin >>a>>b;

    cout

  • 28

    STRNCMP

    Compar

    strncmp (sir1,sir2,nr)

    unde sir 1 sir 2 sunt variabile de tip de caractere, iar nr

    este o de tip ntreg.

    Exemplu: char a[21],b[21];

    cin >>a>>b;

    cout

  • 29

    STRICMP

    Compar de caractere a face ntre litere mici

    litere mari.

    stricmp(sir1,sir2)

    unde sir 1 sir 2 sunt variabile de tip de caractere.

    Exemplu: char a[21],b[21];

    cin >>a>>b;

    cout

  • 30

    STRSET

    strset (sir, ch )

    unde sir este o de tip de caractere, iar ch este o

    de tip caracter.

    Exemplu: char a[21],x;

    cin >>a>>x;

    strset ( a,x );

    cout

  • 31

    STRNSET

    ntr-un de caractere, primele nr caractere, cu caracterul

    ch .

    strnset(sir,ch,nr )

    unde sir este o de tip de caractere, ch este o de

    tip caracter, iar nr este o de tip ntreg.

    Exemplu: char a[21],x; int n=2;

    cin >>a>>x;

    strnset ( a,x,n );

    cout

  • 32

    STRLWR

    literele mari n litere mici.

    strlwr(sir)

    unde sir este o de tip de caractere.

    Exemplu: char a[21];

    cin >>a;

    strlwr (a);

    cout

  • 33

    STRUPR

    literele mici n litere mari.

    strupr(sir)

    unde sir este o de tip de caractere.

    Exemplu: char a[21];

    cin >>a;

    strupr (a);

    cout

  • 34

    TOLOWER

    o mare n .

    tolower(ch )

    unde ch este o de tip caracter.

    Exemplu: char c;

    cin >>c;

    c=tolower (c);

    cout

  • 35

    TOUPPER

    o n mare.

    toupper(ch )

    unde ch este o de tip caracter.

    Exemplu: char c;

    cin >>c;

    c=toupper (c);

    cout

  • 36

    STRCHR

    prima a ununi caracter ntr-un de caractere.

    strchr(sir,ch)

    unde sir este o de tip sir de caractere, iar ch este o

    de tip caracter.

    Exemplu: char a[21],c;

    cin >>a>>c;

    cout

  • 37

    STRRCHR

    ultima a ununi caracter ntr-un de caractere.

    strrchr(sir,ch)

    unde sir este o de tip sir de caractere, iar ch este o

    de tip caracter.

    Exemplu: char a[21],c;

    cin >>a>>c;

    cout