Orar semigroup #2

Orar semigroup #2

2 decembrie - funcţiile atoi, atof, itoa

Funcţii de conversie între şiruri de caractere şi numere

1) Fie declaraţia char a[100];
atoi(a); - converteşte şirul de caractere în număr întreg(returnează o valoare întreagă);
ex: char a[]="123";
int nr;
nr=atoi(a)*2;
cout<<nr; // se va afişa 246
Dacă a[]="123mmm" se va afişa 246
Daca a[]="aaa" se va fişa 0

2) Se citesc de la tastatură 2 numere, în două variabile de tip şir de caractere. Să se afişeze suma acestora, dacă lungimea fiecărui număr este de maxim 9 caractere. În cazul în care unul din numere are mai mult de 9 caractere, să se afişeze un mesaj.
#include<iostream>
using namespace std;
int main()
{int s;
char a[100],b[100];
cin>>a;
cin>>b;
if(strlen(a)>9 || strlen(b)>9)
    {cout<<"Mesaj";return 0;}
s=atoi(a)+atoi(b);
cout<<s;
}
3) Fie declaraţia float n; char a[100];
atof(a); - converteşte şirul de caractere la număr real(returnează o valoare de tip real)
ex: floar n; char a[100];
cin>>a; // 123.221abc
n=atof(a);
cout<<n; // se afişează 123.221

4) Fie declaraţia int x, baza; char a[100];
itoa(x,a,baza); - converteşte un întreg la şir de caractere. Conversia se face în baza precizată. Returnează pointer la şir(deci o valoare de tip şir de caractere).
ex: int x=1234;char a[10];
itoa(x,a,10);
cout<<a<<" "<<strlen(a); / se afişează 1235 4
sau
int y=7; char a[100];
itoa(y,a,2);
cout<<a; // se afişează 111
Se citeşte un număr întreg. Să se transforme în baza 2 şi să se afişeze.
#include<iostream>
using namespace std;
int main()
{int n;
char a[100];
cin>>n;
itoa(n,a,2);
cout<<a;
}

5) Primele n numere naturale se lipesc şi formează un număr foarte mare. Pentru n citit de la tastatură, să se afişeze: a) lungimea numărului obţinut; b) cifra sau cifrele din mijloc.
#include<iostream>
using namespace std;
int main()
{char a[100]={0},b[100];
int i,n;
cin>>n;
for(i=1;i<=n;i++)
{   itoa(i,b,10);
    strcat(a,b);
}
cout<<"Numarul foarte mare "<<a<<endl;
cout<<"Lungimea "<<strlen(a)<<endl;
if(strlen(a)%2==0)
cout<<"Mijloc "<<a[strlen(a)/2-1]<<a[strlen(a)/2]<<endl;
else cout<<"Mijloc "<<a[strlen(a)/2];
}
6) Se citeşte de la tastatură o propoziţie. Să se codifice, înlocuind fiecare literă cu numărul liniei şi coloanei corespunzătoare.(Litera A se înlocuieşte cu caractere 11, B cu 12. Şirul MARTI devine codificat 3211424424)

joi, 2 decembrie 2010 by DlMuresan
Categories: , , , | 1 comment

One Comment

  1. Exercitiul 6 il aveti ca tema!!! Se verifica! Cei care ati fost la ora il aveti pe foaie, ceilalti puteti sa il cereti de la colegi.Prof. Cipri Marginean

Leave a Reply