Informatică, întrebare adresată de dinesculidia, 8 ani în urmă

Salut! Am nevoie de ajutor la niste probleme.

Am nevoie ca probleme 3667, 108 127 si 3246 de pe pbinfo sa fie rezolvate cu subprograme. Va rog mult sa ma ajutati!

Rezolvare C++;

Răspunsuri la întrebare

Răspuns de Sergetec
1

Salut!

Ai rezolvarile in C++ mai jos

3667.

#include <iostream>

using namespace std;

int cifmax(int n)

{

 int max = -1;

 do

 {

   int c = n % 10;

   if (c > max)

   {

     max = c;

   }

   n /= 10;

 }

 while (n != 0);

 return max;

}

int main()

{

 int n, cnt = 0;

 cin >> n;

 for (int i = 1; i <= n; ++i)

 {

   int x;

   cin >> x;

   if (cifmax(x) % 2 == 1)

   {

     cnt++;

   }

 }

 cout << cnt;

 return 0;

}

108.

#include <iostream>

using namespace std;

int pc(int n)

{

   while (n > 9)

   {

       n /= 10;

   }

   return n;

}

int main()

{

   int n;

   cin >> n;

   

   int prima_cifra, cnt = 0;

   

   if(n == 0)

       cout << 1;

   else{

       prima_cifra = pc(n);

       while(n > 0){

           if(n % 10 == prima_cifra)

               cnt++;

           n/=10;

       }

       cout << cnt;

   }

   return 0;

}

127.

#include <iostream>

using namespace std;

int pc(int n)

{

 while (n > 9)

 {

   n /= 10;

 }

 return n;

}

int main()

{

 int n, s = 0;

 cin >> n;

 for (int i = 1; i <= n; ++i)

 {

   int x;

   cin >> x;

   s += pc(x);

 }

 cout << s;

 return 0;

}

3246.

#include <iostream>

using namespace std;

int nrcif(int n)

{

 int cnt = 0;

 while (n)

 {

   cnt++;

   n /= 10;

 }

 return cnt;

}

int cifpar(int n)

{

 int cnt = 0;

 while (n)

 {

   int c = n % 10;

   if (c % 2 == 0)

   {

     cnt++;

   }

   n /= 10;

 }

 return cnt;

}

int cifimp(int n)

{

 int cnt = 0;

 while (n)

 {

   int c = n % 10;

   if (c % 2 != 0)

   {

     cnt++;

   }

   n /= 10;

 }

 return cnt;

}

int main()

{

 int a, b;

 cin >> a >> b;

 long long s = 0;

 for (int i = a; i <= b; ++i)

 {

   if ((nrcif(i) % 2 == 0) && (cifpar(i) == cifimp(i)))

   {

     s += i;

   }

 }

 cout << s;

 return 0;

}


dinesculidia: Multumesc!
dinesculidia: Am vazut ca te pricepi. Ma poti ajuta te rog la problema 368 pbinfo cu o functie ce verifica daca un numar este palindrom.
Sergetec: Cu mare placere! Pune intrebarea si iti raspund
dinesculidia: ok
dinesculidia: Gata. Este postata la mine pe cont!
Alte întrebări interesante