Cerinţa
Scrieţi un program care citeşte un tablou bidimensional cu m linii şi n coloane şi un număr k şi determină suma indicilor coloanelor care conţin valoarea k.
Date de intrare
Fişierul de intrare exista.in conţine pe prima linie numerele k, m şi n, iar pe următoarele m linii câte n numere naturale separate prin spaţii, reprezentând elementele tabloului.
Date de ieşire
Fişierul de ieşire exista.out va conţine pe prima linie suma cerută. Dacă nu există în matrice valoarea k, se va afişa mesajul NU EXISTA.
Restricţii şi precizări
2≤m,n≤10;- valoarea lui
kşi elementele matricei sunt numere întregi cu cel mult4cifre; - liniile sunt numerotate de la
1lam, iar coloanele de la1lan.
Exemplu
exista.in
3 5 4 2 4 5 -8 1 3 7 9 4 -2 3 10 5 4 2 37 6 7 3 13
exista.out
5
Explicaţie
Coloana 2 şi coloana 3 conţin valoarea 3, iar suma lor este 5.
Cum e corect?
cout < "As la info";
cout << "As la info";
cout >> "As la info";
Felicitări! Poți mai mult?
Avem sute de probleme pentru tine, fiecare cu explicații ușor de înțeles.
Greșit, dar nu-i bai!
Antrenează-te cu sutele de probleme pe care ți le-am pregătit. Îți explicăm fiecare problemă în parte.
Rezolvare
Iată rezolvarea de 100 de puncte pentru problema Exista:
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("exista.in");
ofstream fout("exista.out");
int a[105][105],n,m, k;
int main(){
fin >> k >> m >> n;
for(int i = 1 ; i <= m ; ++ i)
for(int j = 1 ; j <= n ; ++ j)
fin >> a[i][j];
int s = 0;
bool gasit = false;
for(int j = 1 ; j <= n ; ++j){
int ok = 0;
for(int i = 1 ; i <= m ; i++)
if(a[i][j] == k)
ok = 1, gasit = true;
if(ok == 1)
s += j;
}
if(gasit)
fout << s;
else
fout << "NU EXISTA";
return 0;
}
Atenție
Enunțurile afișate pe această pagină aparțin exclusiv site-ului PbInfo. Astfel, pentru ștergerea conținutului, puteți să ne contactați la adresa
.
Rezolvarea problemei #231 Exista
Pe această pagină găsești rezolvarea de 100 de puncte pentru problema #231 Exista de pe PbInfo.ro. Atenție: nu încurajăm copiatul codului! Totuși, credem cu tărie că analizarea unei soluții corecte este o metodă foarte ușoară de a învăța informatică, astfel că oferim sursele pentru peste 1500 de probleme de pe platforma PbInfo.ro.
Pentru rezolvări PbInfo de la peste 1500 de probleme, vă invităm să intrați pe site-ul nostru!