Am nevoie de ajutor la o problema de informatica.
Se da un tablou bidimensional cu m linii si n coloane (1<=m, n>=50) avand componente intregi. Se cere sa se calculeze suma componentelor de pe marginea tabloului.
Răspunsuri la întrebare
Răspuns de
3
int m,n,a[10][10],i,j,s=0;
cin>>m>>n;
(...) - stii sa citesti matrice... sper
for(i=0; i
andrimeghe:
Daca nu merge incearca aici:
Răspuns de
2
#include <iostream>
using namespace std;
int main(){
int m, n, i, j, s=0;
cout<<"m="; cin>>m;
cout<<"n="; cin>>n;
int v[m][n];
for(i=0;i<m;i++)
for(j=0;j<n;j++){
cout<<"v["<<i<<"]["<<j<<"]=";
cin>>v[i][j];
}
if(m==1){
//Daca matricea e facut doar dintr-o singura linie
for(i=0;i<n;i++){
s+=v[0][i];
}
}else if(n==1){
//Daca matricea e facut doar dintr-o singura coloana
for(i=0;i<m;i++){
s+=v[i][0];
}
}else{
//Daca matricea are mai multe linii si coloane
//Linia de sus si de jos: (m este 0 si (m-1))
for(i=0;i<n;i++) s+=v[0][i];
for(i=0;i<n;i++) s+=v[m-1][i];
//Coloana din dreapta/stanga fara primul/ultimul element (n este 0 si (n-1))
for(i=1;i<m-1;i++) s+=v[i][0];
for(i=1;i<m-1;i++) s+=v[i][n-1];
}
cout<<"s="<<s;
return 0;
}
using namespace std;
int main(){
int m, n, i, j, s=0;
cout<<"m="; cin>>m;
cout<<"n="; cin>>n;
int v[m][n];
for(i=0;i<m;i++)
for(j=0;j<n;j++){
cout<<"v["<<i<<"]["<<j<<"]=";
cin>>v[i][j];
}
if(m==1){
//Daca matricea e facut doar dintr-o singura linie
for(i=0;i<n;i++){
s+=v[0][i];
}
}else if(n==1){
//Daca matricea e facut doar dintr-o singura coloana
for(i=0;i<m;i++){
s+=v[i][0];
}
}else{
//Daca matricea are mai multe linii si coloane
//Linia de sus si de jos: (m este 0 si (m-1))
for(i=0;i<n;i++) s+=v[0][i];
for(i=0;i<n;i++) s+=v[m-1][i];
//Coloana din dreapta/stanga fara primul/ultimul element (n este 0 si (n-1))
for(i=1;i<m-1;i++) s+=v[i][0];
for(i=1;i<m-1;i++) s+=v[i][n-1];
}
cout<<"s="<<s;
return 0;
}
Alte întrebări interesante
Limba română,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă