Informatică, întrebare adresată de andreivezure, 9 ani în urmă

Cerința
Pacală şi Tândală mergeau printr-o pădure. Într-un copac, ei au văzut o pasăre.
- Măi, Tândală, uite o pasăre! Hai s-o prindem, s-o frigem şi s-o mâncăm boiereşte, zise Păcală lingându-şi degetele.
- Că bine zici. Dar cum s-o mâncăm fără sare? Stai tu s-o păzeşti ca să nu zboare şi eu dau fuga în sat să aduc nişte sare, zise Tândală.
- Du-te în pivniţa mea şi acolo vei găsi N saci, pe fiecare sac vezi că e o etichetă pe care scrie un număr; dacă numărul are toate cifrele în ordine strict crescătoare, de la stânga la dreapta, înseamnă că acel sac conţine sare, altfel conţine zahăr. Încarcă în căruţă toţi sacii cu sare şi hai cu ei încoace până păzesc eu pasărea, zise Păcală.

Ajutaţi-l pe Tândală să numere câţi saci cu sare trebuie să încarce în căruţă.

Date de intrare
De pe prima linie a fişierului saci.in se citeşte un număr natural N ce reprezintă numărul sacilor.
De pe următoarele N linii se citesc valori naturale, câte una de pe fiecare linie, reprezentând numărul scris pe eticheta unui sac.

Date de ieșire
În fişierul saci.out se va afişa, pe prima linie, un număr natural ce reprezintă numărul de saci cu sare ce trebuie încărcaţi în căruţă.

Restricții și precizări
1 ≤ n ≤ 100
numărul scris pe fiecare sac este un număr natural nenul, cu cel mult 8 cifre



Exemplu
saci.in

5
159
721
18
121
7
saci.out

3
Explicație
Sunt 5 saci. Dintre numerele cu care sunt etichetaţi saci doar 159, 18 şi 7, au cifrele în ordine strict crescătoare de la stânga la dreapta.
Astfel doar 3 saci conţin sare şi trebuie încărcaţi în căruţă.

Răspunsuri la întrebare

Răspuns de JolieJulie
3
#include<iostream>
#include<fstream>
using namespace std;
ifstream fin ("saci.in");
ofstream fout ("saci.out");
int main()
{
    int n,v[100],ok=1,k=0,i;
    fin>>n;
    for(i=0; i<n; i++)
        fin>>v[i];
    for(i=0; i<n; i++)
    {  ok=1;
        while(v[i])
        {
            if(v[i]%10<v[i]%100/10)
                ok=0;
            v[i]=v[i]/10;
        }
        if(ok==1)
           k++;


    }
    fout<<k;
}



cocirmariadenis: ????!!!!
JolieJulie: ? ...
cocirmariadenis: Asa arata un raspuns de moderator?
JolieJulie: A scris programul ... asta si trebuia sa fac
JolieJulie: am*
NegrucaPantera: rezolvarea aceata este de 20 puncte fiindca in acest if:" if(v[i]%10
NegrucaPantera: TREBUIE PUS <=
Alte întrebări interesante