a. Scrieţi un program care ar număra biţii semnificativi, de la dreapta spre stînga, pentru un număr introdus de la tastatură.
b. Scrieţi un program care compară două stive de numere îtrergi.

(program in C++)


Răspuns :

A.

#include <iostream>

int main(){

   int n, bits = 0;

   std::cin >> n;

   for(; n; n >>= 1, ++bits);

   std::cout << bits;

   return 0;

}

B.

#include <iostream>

#include <stack>

void inserare(std::stack<int>& in, const int n){

   for(int i = n; i; --i){

       in.push(0);

       std::cin >> in.top();

   }

}

int main(){

   std::stack<int> stiva[2];

   int n;

   std::cout << "Introduceti marimea stivelor: ";

   std::cin >> n;

   for(int i = 0; i < 2; ++i){

       std::cout << "Introduceti elemente a stivei " << i+1 << ": ";

       inserare(stiva[i], n);

   }

   for(int i = n; i; --i){

       if(stiva[0].top() != stiva[1].top()){

           std::cout << "Nu sunt egale\n";

           return 0;

       }

       stiva[0].pop();

       stiva[1].pop();

   }

   std::cout << "Sunt egale\n";

   return 0;

}

Vă mulțumim că ați ales să vizitați platforma noastră dedicată Informatică. Sperăm că resursele disponibile v-au fost de ajutor. Pentru întrebări sau asistență suplimentară, nu ezitați să ne contactați. Ne bucurăm să vă revedem în curând și vă invităm să ne salvați în lista de site-uri preferate!


RO Learner: Alte intrebari