Răspuns :
Sunt facute in C++. Sa iti fie de folos! Programele merg. Te poti inspira si poate gasesti solutii mai bune / optimizari de cod.
1.
#include <iostream>
using namespace std;
int main()
{
int m,n;
cin>>n;cin>>m;
int sumaPerimetru = 0;
//Declarare matrice si elementele ei
int **ma;
ma = new int*[n];
for(int i = 0;i<n;i++)
{
ma[i] = new int[m];
}
//Citeste si afiseaza instant maximul de pe fiecare linie si suma elem perimetru
//Citire elemente matrice
for(int i = 0;i<n;i++)
{
int max = 0;
for(int j=0;j<m;j++)
{
cout<<"ma["<<i<<","<<j<<"]=";
cin>>ma[i][j];
if(j==0)
max = ma[i][j];
else
{
if (ma[i][j] > max)
max = ma[i][j];
}
if (i == 0 || i == n-1)
sumaPerimetru += ma[i][j];
else if(j==0 || j==m-1)
sumaPerimetru += ma[i][j];
}
cout<<"Elem. max de pe linia "<<i<<" este :"<<max<<endl;
}
cout<<endl;
//Afisare matrice
for(int i = 0;i<n;i++)
{
for(int j=0;j<m;j++)
{
cout<<ma[i][j]<<" ";
}
cout<<endl;
}
cout<<"Suma elem de pe perimetrul matricei este: "<<sumaPerimetru<<endl;
//Aceasta este idem doar ca se proceseaza dupa ce s-au citit elementele matricei
//Am zis sa le pun ambele sa alegi tu in functie de ce iti cere.
//Daca nu ai restrictie de timp faci cum e mai jos altfel daca ai as recomanda cum
//este mai sus pt ca executi algoritmul fara a mai parcurge inca odata matricea
//inafara de parcurgerea de citire.
sumaPerimetru=0;
for(int i = 0;i<n;i++)
{
int max = ma[i][0];
for(int j=0;j<m;j++)
{
if (i == 0 || i == n-1)
sumaPerimetru += ma[i][j];
else if(j==0 || j==m-1)
sumaPerimetru += ma[i][j];
if (ma[i][j] > max)
max = ma[i][j];
}
cout<<"Elem. max de pe linia "<<i<<" este :"<<max<<endl;
}
cout<<"Suma elem de pe perimetrul matricei este: "<<sumaPerimetru<<endl;
return 0;
}
2.
#include <iostream>
using namespace std;
int fib(int x) {
if (x == 0)
return 0;
if (x == 1)
return 1;
return fib(x-1)+fib(x-2);
}
int main()
{
int n = 32000;
int sum=0;
while(n>0)
{
int uc = n % 10;
n/=10;
sum += uc*uc;
}
cout<<sum<<endl;
int i = 0;
while(fib(i) < sum)
{
i++;
}
if(fib(i) == sum)
cout<<"DA";
else
cout<<"NU";
return 0;
}
3.
// Example program
#include <iostream>
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin>>n;
//Declarare matrice si elementele ei
int **ma;
ma = new int*[n];
for(int i = 0;i<n;i++)
{
ma[i] = new int[n];
}
//Citeste si afiseaza instant maximul de pe fiecare linie si suma elem perimetru
//Citire elemente matrice
for(int i = 0;i<n;i++)
{
for(int j=0;j<n;j++)
{
cout<<"ma["<<i<<","<<j<<"]=";
cin>>ma[i][j];
}
}
cout<<endl;
//Afisare matrice // si calculare cerinta
float maxMA = -INT_MAX;
float minMA = INT_MAX;
for(int i = 0;i<n;i++)
{
float tempMinMA = 0;
float s1 = 0;
float tempMaxMA = 0;
float s2 = 0;
for(int j=0;j<n;j++)
{
cout<<ma[i][j]<<" ";
s1+=(float)ma[i][j];
s2+=(float)ma[j][i];
}
tempMinMA = s1/(float)n;
tempMaxMA = s2/(float)n;
if(tempMinMA < minMA)
minMA = tempMinMA;
if(tempMaxMA > maxMA)
maxMA = tempMaxMA;
cout<<endl;
}
cout<<endl;
cout<<minMA<<endl;
cout<<maxMA<<endl;
cout<<"Diferenta este: "<<maxMA-minMA;
}
Vă mulțumim pentru vizita pe site-ul nostru dedicat Informatică. Sperăm că informațiile oferite v-au fost de ajutor. Nu ezitați să ne contactați pentru orice întrebare sau dacă aveți nevoie de asistență suplimentară. Vă așteptăm cu drag data viitoare și nu uitați să ne adăugați la favorite!