Informatică, întrebare adresată de Utilizator anonim, 8 ani în urmă

Am nevoie de problema #2363 de pe pbinfo. Corecta va rog! Dau si coronita!!

Răspunsuri la întrebare

Răspuns de Utilizator anonim
2
#include<iostream.h>
#include<fstream.h>
using namespace std;

int main () { int n,v[100],i,copie,nr_cif,ok,j,x[9];
      ifstream f ("joc8.in");
      ofstream g ("joc8.out");

     cout<<"Cate numere se extrag " ;
     f>>n;
     
for(i=1;i<=n;i++)       //Citim numerele extrase 
      f>>v[i]; 

for(i=1;i<=n;i++) {   ok=1;      
     copie =v[i];
     nr_cif=0;
     while (copie) {nr_cif++;
                           copie=copie/10;}
     if(nr_cif%2==0) ok=0;                   /*Daca numarul are numar par de cifre                                                                 ok-ul se face 0 */

         else {copie=v[i];                      
                  poz=0;                           //Vectorul este suprascris pt fiecare numar
                  while(copie){
                       x[++poz]=copie%10;        //bagam fiecare cifra in vectorul v
                        copie=copie/10;}
               for(j=nr_cif-1;j>=2;j--)     //Parcurgem cifrele de la a 2-a la penultima
                       if((x[j-1]<x[j]&&x[j]<x[j+1] )||(x[j-1]>x[j]&&x[j]>x[j+1]))
                                ok=0;}               //Verificam conditia cu cifrele alternante
      if(ok==1) nr_cifre_alt++;
      
       g<<nr_cifre_alt;
        f.close();
         g.close();}
                   
                   
      

Utilizator anonim: Probabil sunt metode mult mai simple dar asta mi-a venit pe moment
Utilizator anonim: Sper sa intelegi
Utilizator anonim: Da ms
Utilizator anonim: Am uitat sa declar 2 variabile si sa pun o acolada
Utilizator anonim: int nr_cifre_alt =0 ,poz ;
Utilizator anonim: Si acolada inchisa vine inainte de g<<nr_cifre_alt;
Utilizator anonim: OK
Alte întrebări interesante