playground:codeblocks

Code::Blocks IDE

Să se determine și să se afișeze suma cifrelor lui.

// Limbaj C++
#include <iostream.h>
int main()
{
int n, suma=0;
cout<<„Introdu numarul”; cin>>n;
while (n!=0){
suma=suma+n%10;
n=n/10;}
cout<<„Suma cifrelor este „<<suma;
return 0;
}
// Pseudocod
di: n
de: suma

citeste n
suma=0
┌cat timp n!=0 executa
│ suma=suma+n%10
│ n=n/10
└■
scrie suma

1)

Să se determine și să se afișeze produsul cifrelor lui.

// Limbaj C++
#include <iostream>
using namespace std;
int n, p;
int main()
{
cout << "Introduceti numarul n: ";
cin >> n;
p=1;
while (n != 0)
	{
		p = p * (n % 10);
		n = n / 10;
	}
cout << "Produsul cifrelor lui n este: " << p;
return 0;
}

2)

// Pseudocod
se declară variabilele n și p de tip intreg
variabila n memorează numărul introdus de la tastatură
variabila p memorează produsul cifrelor lui n
se citește numarul n
p se inițializează cu elementul neutru al înmulțirii (altfel produsul cifrelor ar fi mereu 0)
se parcurg cifrele lui n
se înmulțesc pe rand cifrele lui n
se taie pe rând cifrele lui n
se afișează p (produsul cifrelor lui n)

#include <iostream>

using namespace std;

int main()
 {
 int x,x1;
 int s,p,nr;
 cout<<"Dati valoarea lui x= ";cin>>x;
 x1=x;
 s=0;
 p=1;
 nr=0;
 if(x==0)nr=1;
 while(x1!=0)
 {
 s=s+x1%10;
 p=p*(x1%10);
 nr++;
 x1=x1/10;
 }
 cout<<"Suma cifrelor lui "<<x<<" este "<<s<<endl;
 cout<<"Produsul cifrelor lui "<<x<<" este "<<p<<endl;
 cout<<"Numarul cifrelor lui "<<x<<" este "<<nr;

return 0;
 }

Să se determine și să se afișeze numărul cifrelor lui pare și impare.

// Limbaj C++
void p(int n)
   {
     int c,p=0,i=0;
     while(n!=0)
       {
         c=n%10;
         n=n/10;
       if(c%2==0)
           p++:
     else
         i++:
   }
cout<<"pare "<<p<<" "<<"impare "<<i;
}
// Pseudocod

3)

Să de determine și să se afișeze răsturnatul lui.

// Limbaj C++
#include <iostream.h>
int main()
{
    int a,b=0;
    cout<<"Scrie o valoare pentru variabila a ";
    cin>>a;
    while (a!=0){
        b=b*10+a%10;
        a=a/10;
    }
    cout<<"Numarul inversat este "<<b;
    return 0;
}
// Pseudocod

4)

Să se determine și să se afișeze cifra maximă.

// Limbaj C++
Void cifmaxmin(long long x, int &Max, int &Min)
{
    if(x < 10)
        Min=Max=x;
    else
    {
        cifmaxmin(x/10,Max,Min);
        if( x%10 > Max )
            Max = x%10;
        if(x%10 <Min)
            Min = x%10;
    }
}
// Pseudocod
Intreg n,max
citeste n
max <- 0

|cat timp n != 0 executa
|    daca n mod 10 > max atunci max <- n mod 10
|    n <- n div 10
|~~
 
scrie max

5) 6)

Să se determine și să se afișeze cifra minimă.

// Limbaj C++
Void cifmaxmin(long long x, int &Max, int &Min)
{
    if(x < 10)
        Min=Max=x;
    else
    {
        cifmaxmin(x/10,Max,Min);
        if( x%10 > Max )
            Max = x%10;
        if(x%10 <Min)
            Min = x%10;
    }
}
// Pseudocod

7)

Să se determine și să se afișeze de câte ori apare cifra c în număr.

// Limbaj C++
While(n!=0)
{
uc=n%10;
if(uc==c)
contor++;
n=n/10;
}
// Pseudocod

8)

Să se determine și să se afișeze pe ce poziții apare cifra c în număr.

// Limbaj C++
// Pseudocod

Să se determine și să se afişeze cifra de rang k a numărului n

Rangul unei cifre este numărul sau de ordine, numerotând cifrele de la dreapta la stânga începând cu 0). Exemplu: cifra de rang 2 din numărul 230976 este egală cu 9.

// Limbaj C++
#include<iostream>
#include<math.h>
using namespace std;
int main(){
    int n, k;
    cin>>n>>k;
    cout<<int(n/pow(10,k-1))%10;
}
// Pseudocod

9)

Să se verifice dacă toate cifrele numărului sunt egale și sa se afișeze un mesaj corespunzător.

// Limbaj C++
// Pseudocod

Să se verifice dacă toate cifrele numărului sunt în ordine crescătoare și să se afișeze un mesaj corespunzător.

// Limbaj C++
// Pseudocod

Să se verifice dacă este palindrom și să se afișeze un mesaj corespunzător.

Un număr este palindrom dacă este egal cu răsturnatul său.

// Limbaj C++
#include<iostream.h>
int main()
{
    int n,copie,invers=0;
    cout<<"Introdu valoare";
    cin>>n;
    copie=n;
    while (n!=0){
        invers=invers*10+n%10;
        n=n/10;
    }
    if (invers==copie)
        cout<<"Numarul introdus este palindrom.";
    else
        cout<<"Numarul introdus nu este palindrom.";
    return 0;
}
// Pseudocod
di: n
aux: copie, oglindit
citeste n

copie←n
┌cat timp d!=0
│ invers←invers*10+n%10
│ n←n/10
└■
┌daca copie==invers
│ atunci scrie „Este palindrom.”
│ altfel scrie „Nu e palindrom.”
└■

10) 11)

Pentru a și b naturale cu max 9 cifre.

Să se verifice dacă numărul de cifre pare ale lui a este egal cu numărul de cifre pare ale lui b și să se afișeze un mesaj corespunzător.

// Limbaj C++
// Pseudocod

Să se afișeze numărul cu suma cifrelor cea mai mare.

// Limbaj C++
// Pseudocod

De exemplu, dacă se citește numărul 23428, atunci se va afișa:

23428
3428
428
28
8
// Limbaj C++
// Pseudocod

Să se determine şi să afişeze toate prefixele numărului care se termină în cifra c.

Exemplu. Pentru c=1 și n=18164716 se vor afişa cele trei prefixe

1816471
181
1
// Limbaj C++
// Pseudocod

Dacă nu există astfel de prefixe, atunci algoritmul va afişa mesajul NU EXISTĂ.

Exemplu. Pentru c=5 şi n=7238 se va afişa

NU EXISTĂ
// Limbaj C++
// Pseudocod

Exemplu: date de intrare 347092 date de ieşire DA.

// Limbaj C++
// Pseudocod

Se cere verificarea numărului impar de cifre și dacă nu se afișează un mesaj de eroare.

// Limbaj C++
// Pseudocod

Dacă numărul are număr impar de cifre să se afișeze numărul obţinut după eliminarea cifrei din mijloc.

// Limbaj C++
// Pseudocod

Să se afișeze numărul obținut după dublarea fiecărei cifre egală cu zero din n.

// Limbaj C++
// Pseudocod

Scrieți un algoritm care afișează //cifra de control// a lui n efectuând suma cifrelor sale,

// Limbaj C++
// Pseudocod

apoi suma cifrelor acestei sume etc.

// Limbaj C++
// Pseudocod

până se obţine o sumă formată dintr-o singură cifră.

// Limbaj C++
// Pseudocod

Exemplu. Numărul 986323689 este număr smile pentru că:

  1. are număr impar de cifre,
  2. este palindrom,
  3. cifra din mijloc este cea mai mică,
  4. şirul cifrelor este strict descrescător până la cifra minima.

Scrieţi algoritmul pseudocod care citeşte un număr natural nenul n şi verifică dacă numărul dat este //număr smile//.

// Limbaj C++
// Pseudocod

Să se determine și să se afișeze divizorii pozitivi ai lui.

// Limbaj C++
// Pseudocod

Sa se determine și sa se afișeze numărul divizorilor pozitivi ai iui.

// Limbaj C++
// Pseudocod

Să se determine și sa se afișeze suma divizorilor pozitivi ai lui.

// Limbaj C++
// Pseudocod

Să se determine și să se afișeze numărul de divizorilor pari și numărul de divizori impari.

// Limbaj C++
// Pseudocod

Să se verifice dacă este număr perfect. Un număr este perfect dacă este egal cu suma divizorilor pozitivi ai lui, dar strict mai mici decât el.

// Limbaj C++
// Pseudocod

Să se afișeze numărul cu cei mai mulți divizori impari.

// Limbaj C++
// Pseudocod

Să se afișeze toți divizorii comuni celor două numere.

// Limbaj C++
// Pseudocod

Să se verifice dacă sunt numere prietene.

Două numere sunt prietene dacă suma divizorilor primului număr, dar fară el este egală cu al doilea număr și suma divizorilor celui de al doilea număr, dar fără el este egală cu primul număr.

// Limbaj C++
// Pseudocod

Sa se determine și să se afișeze cmmdc-ul, folosind algoritmul de scăderi repetate.

// Limbaj C++
#include<iostream.h>
#include<conio.h>
int main()
{int a,b;
cout<<"a= ";cin>>a;
cout<<"b= ";cin>>b;
while(a!=b)
{if(a>b)
a=a-b;
   else
b=b-a;}
cout<<"Cel mai mare divizor comun este: "<<a;
getche();
    }
// Pseudocod

12)

Să se determine și sa se afişeze cmmdc-ul, folosind algoritmul de împărţiri repetate.

// Limbaj C++
#include <stdio.h>
int main()
{   
    int a,b,r;
    scanf("%d %d",&a,&b);
    r = a % b;
        while(r != 0)
        {
           a = b;
           b = r;
           r = a % b;   
        }
     
    printf("cmmdc= %d",b);
    return 0;
}
// Limbaj C++
int cmmdc(int a, int b)
{
    if((!a) || (!b)) return a+b;
    if(a>b) return cmmdc(a%b,b);
    return cmmdc(a,b%a);
}
// Pseudocod

13)

Sa se determine și sa se afişeze cmmmc-ul.

// Limbaj C++
#include <stdio.h>
int main()
{
    int a,b,r,c,x,y;
    scanf("%d %d",&a,&b);
    x=a;
    y=b;
    while(b!=0)
    {
        r=a % b;
        a=b;
        b=r;
    }
    printf("cmmdc= %d\n",a);
    c=x*y/a;
    printf("cmmmc= %d",c);
    return 0;
}
// Pseudocod

14)

Să se verifice dacă sunt prime între ele și să se afișeze un mesaj corespunzător.

Doua numere sunt prime între ele daca cmmdc-ul lor este egal cu 1.

// Limbaj C++
// Pseudocod

Să se verifice dacă este număr prim și să se afișeze un mesaj corespunzător.

// Limbaj C++
#include<iostream>
using namespace std;
int main()
{
int n,c=0;
cout<<"Introdu n"; cin>>n;
for (int i=1; i<=n; i++)
{
if (n%i==0)
c++;
}
if (c==2)
cout<<"Numarul este prim";
else
cout<<"Numarul NU este prim";
return 0;
}
// Limbaj C++
bool isPrime(int div, int n) {
if (n==2) return true; 
if (n%div==0 || n==1) return false;
if (div * div &gt; n) return true;
if (div == 2) return isPrime(3, n);
return isPrime(div+2, n);
}
// Pseudocod

15)

Să se verifice dacă suma cifrelor sutelor și unităților lui p este număr prim.

// Limbaj C++
// Pseudocod

Să se afișeze o descompunere a lui n ca sumă a două numere prime.

// Limbaj C++
// Pseudocod

Să se determine și să se afișeze numărul prim cel mai apropiat.

// Limbaj C++
// Pseudocod

Pentru un șir de numere întregi citit până la 0.

Să se determine și să se afișeze suma lor.

// Limbaj C++
// Pseudocod

Să se determine și să se afișeze cel mal mare număr din șir.

// Limbaj C++
// Pseudocod

Să se determine și să se afișeze cel mai mic număr din șir.

// Limbaj C++
// Pseudocod

Să se determine și să se afișeze suma (numărul sau produsul) numerelor care îndeplinesc o anumită //proprietate simplă// (sunt pare).

// Limbaj C++
// Pseudocod

Să se determine și să se afișeze numărul (suma, produsul, minimul sau maximul) celor cu o anumită //proprietate algoritm de bază// (numărul celor prime, numărul celor palindrom sau numărul celor perfecte).

// Limbaj C++
// Pseudocod

Să se determine și să se afișeze valoarea din șir cu o anumită proprietate algoritm de bază (cel mai mare număr prim, numărul cu cei mai mulți divizori, numărul cu suma cifrelor maximă).

// Limbaj C++
// Pseudocod

Să se afle cea mai mare valoare pară din șir. Daca șirul nu conține valori pare se va afișa mesajul "Lipsă valori pare".

// Limbaj C++
// Pseudocod

Sâ se determine și să se afişeze cmmdc-ul numerelor din șir.

// Limbaj C++
// Pseudocod

Să se verifice dacă numerele sunt în ordine strict crescătoare și să se afișeze un mesaj corespunzător.

// Limbaj C++
// Pseudocod

Să se determine și să se afișeze cea mai mare diferență dintre două valori alăturate din șir.

// Limbaj C++
// Pseudocod

Să se determine câte elemente din șir sunt mai mari decât vecinii săi din sir, adică decât cel precedent și decât cel următor.

// Limbaj C++
// Pseudocod

Să se determine și să se afişeze de câte ori apare x în șir și pe ce poziții se află.

// Limbaj C++
// Pseudocod

Să se determine și să se afișeze suma lor.

// Limbaj C++
// Pseudocod

Să se determine și să se afișeze cel mai mare număr din șir si poziţia pe care se află.

Dacă sunt mai multe valori egale cu maximul se va alege prima găsită.

// Limbaj C++
// Pseudocod

Să se determine și sa se afișeze cel mai mic număr din șir și poziția pe care se află.

Dacă sunt mai multe valori egale cu minimul se va alege prima găsită.

// Limbaj C++
// Pseudocod

Să se determine și să se afișeze suma (numărul, produsul, minimul sau maximul) numerelor care îndeplinesc o anumită //proprietate simplă// (sunt divizibile cu k, unde k este un număr intreg dat).

// Limbaj C++
// Pseudocod

Sa se determine și sa se afișeze numărul (suma, produsul, minimul sau maximul) celor cu o anumită //proprietate algoritm de bază// (numărul celor prime, numărul celor palindrom sau numărul celor perfecte).

// Limbaj C++
// Pseudocod

Să se determine și să se afișeze valoarea din șir cu o anumită proprietate algoritm de bază (cel mal mic număr prim, numărul cu suma cifrelor minimă).

// Limbaj C++
// Pseudocod

Să se afișeze pe ecran valoarea din șir cu cifra unităților cea mai mică.

// Limbaj C++
// Pseudocod

Să se verifice dacă numerele sunt în ordine descrescătoare și să se afișeze un mesaj corespunzător.

// Limbaj C++
// Pseudocod

Să se verifice dacă numerele pot forma o progresie aritmetică și dacă da să se afișeze rația progresiei, iar dacă nu sa se afișeze un mesaj.

// Limbaj C++
// Pseudocod

Să se determine cea mai lungă secvență de valori pozitive din șir.

// Limbaj C++
// Pseudocod

Să se afișeze cea mai mică valoare pozitivă și de câte ori apare în șirul dat.

// Limbaj C++
// Pseudocod

Să se determine și sa se afişeze de câte ori apare x în șir și pe ce poziţii se află.

// Limbaj C++
// Pseudocod

Să se afișeze numărul de valori din șir cu suma cifrelor pară,

// Limbaj C++
// Pseudocod

dacă nu există se va afişa mesaj //Nu există//.

// Limbaj C++
// Pseudocod

Să se afişeze toate numerele prime mai mici decât n.

// Limbaj C++
// Pseudocod

Să se afișeze toate numerele mai mici decât n, care sunt prime cu n.

// Limbaj C++
// Pseudocod

Să se afișeze toate numerele mai mici sau egale cu n, care au suma cifrelor un număr impar.

// Limbaj C++
// Pseudocod

Să se afișeze toate numerele palindrom din intervalul [a,b] sau [b,a].

Dacă în interval nu există numere palindrom se va afișa mesajul Nu există.

// Limbaj C++
// Pseudocod

Să se afișeze numărul de numere prime din intervalul [a,b] sau [b,a].

Dacă în interval nu există numere prime se va afișa mesajul Nu există.

// Limbaj C++
// Pseudocod

Să se determine toate numerele de patru cifre care au cel puțin un zero și suma tuturor cifrelor este egală cu 17.

// Limbaj C++
// Pseudocod

Să se afișeze toate numerele de trei cifre având cifrele în ordine crescătoare și suma lor este egala cu 18.

// Limbaj C++
// Pseudocod

Să se afișeze toate perechile de numere palindromice din intrevalul [a,b] sau [b,a].

O pereche de numere se numește palindromică dacă al doilea este răsturnatul primului.

// Limbaj C++
// Pseudocod

Să se afișeze toate numerele prime de trei cifre care citite invers sunt tot numere prime.

// Limbaj C++
// Pseudocod

Să se afișeze toate numerele de n cifre egale cu de k ori produsul cifrelor.

Exemplu: n=3, k=5 o soluţie a problemei este 175=5*(1*7*5)

// Limbaj C++
// Pseudocod
// Limbaj C++
// Pseudocod

Să se afișeze primele n numere prime.

// Limbaj C++
// Pseudocod

Să se afișeze primele n pătrate perfecte.

// Limbaj C++
// Pseudocod

Să se afișeze primele n perechi de numere prime gemene (numere prime impare consecutive).

// Limbaj C++
// Pseudocod
1,2,4,8,...
1,2,1  1,2,3,4,3,2,1  1,2,3,4,5,6,5,4,...
1,21,123,4321,12345,...
// Limbaj C++
// Pseudocod
1, 1,2,3, 1,2,3,4, 1,2,3,4,5, ...
// Limbaj C++
// Pseudocod
a0 = 0, a1 = 1,  an = an-1 + an-2 pentru n >= 2
// Limbaj C++
// Pseudocod
Sl = 2 + 4 + 6 + ... + 2n
S2 = l - 2 + 3 - 4 + ... +/- n
S3 = l^2 + 4^2 + 7^2 + ...+ (3n-2)^2
S4 = 2 - 4 + 6 - ... + (-l)^n+1(2n)
S5 = l - l*2 + 1*2*3 - ... +/- l*2*3*...*n
// Limbaj C++
// Pseudocod
// Limbaj C++
// Pseudocod
// Limbaj C++
// Pseudocod
// Limbaj C++
// Pseudocod
// Limbaj C++
// Pseudocod
// Limbaj C++
// Pseudocod
// Limbaj C++
// Pseudocod

Exemplu: pentru n=4 se va afişa

// Limbaj C++
// Pseudocod

Exemplu: pentru n=4 se va afişa

// Limbaj C++
// Pseudocod

1 12 123 1 2 3 4 … n

// Limbaj C++
// Pseudocod

n n-l n*2… 3 2 1 321 21 1

// Limbaj C++
// Pseudocod

Exemplu: pentru n=3 se va afişa

// Limbaj C++
// Pseudocod

https://gianibuzatu.wordpress.com/2014/08/27/structura-repetitiva/


  • playground/codeblocks.txt
  • Ultima modificare: 2018/08/08 23:15
  • (editare externă)