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

Fisierul text numere.in contine pe prima linie cel mult 1 000 000 de numere naturale cu cel mult 9 cifre fiecare. Sa se scrie un program care sa determine si sa afiseze pe ecran separate prin cate un spatiu ultima valoare din fisier care este multiplu al numarului 5 si numarul sau de ordine.

Răspunsuri la întrebare

Răspuns de Sergetec
1

Salut!

Ai rezolvarea in C++ mai jos

#include <fstream>

#include <iostream>

using namespace std;

ifstream in("numere.in");

int main()

{

 int n, cnt = 0, indDeAfisat = 0, valDeAfis;

 while (in >> n)

 {

   cnt++;

   if (n % 5 == 0)

   {

     valDeAfis = n;

     indDeAfisat = cnt;

   }

 }

 cout << valDeAfis << ' ' << indDeAfisat;

 in.close();

 return 0;

}

Explicatie:

Avem un while pana cand nu il mai putem citi pe n, dupa fiecare citire crestem valoarea lui cnt cu 1 (pentru a retine numarul de ordine al fiecarui element), daca numarul respecta cerinta atunci il salvam in variabila valDeAfis si de asemenea ii salvam indicele in indDeAfis, pe care mai apoi le afisam la final.

  • Ti-am lasat si fisierul sursa mai jos
Anexe:
Alte întrebări interesante