Informatică, întrebare adresată de Utilizator anonim, 9 ani în urmă

Ma ajuta cineva si pe mine cu o tema compusa din 3 probleme:(3-4-5) ? Rezolvarea celor 3 probleme primeste coroana ! Multumesc extrem de frumos pentru ajutorul acordat !

Anexe:

Răspunsuri la întrebare

Răspuns de blindseeker90
1
3)Pentru a chema un anumit camp dintr-o structura trebuie sa folosesti "." Deci daca vrem sa lua inaltimea de la triunghiul t1, avem atunci t1.inaltime
Stim ca aria unui triunghi este inaltime*baza/2. Dar daca produsul de deasupra este acelasi,  nu ami conteaza impartirea la 2, deci vom face decat comparatia dintre produsele celor 2.
Secventa de cod este
    if(t1.inaltime*t1.baza==t2.inaltime*t2.baza){
      cout<<"Aceeasi arie";
    }
    else{
    cout<<"Arie diferita";
    }
4) Daca te uiti la suma indicilor, observi ca acolo unde suma e para, avem semnul !, unde suma e impara avem ? deci
#include <iostream>
using namespace std;

int main(){
int i,j;
char a[6][6];
for(i=0;i<5;i++){
for(j=0;j<5;j++){
if((i+j)%2==0){
a[i][j]='!';
}
else{
a[i][j]='?';
}
}
}
for(i=0;i<5;i++){
for(j=0;j<5;j++){

cout<<a[i][j]<<" ";
}
cout<<endl;
}

return 0;
}
5) Cream un vector cu frectventa literelor, initializate toate cu 0. Pentru prima propozitie le adunam pe toate literele intalnite, pentru a doua le scadem. Daca la sfarsit, frecventa literelor ramane 0 pentru toate, inseamna ca sunt in acelasi numar pentru fiecare dintre propozitie
#include <iostream>
#include <cstring>
using namespace std;
//declaram matrice globala reprezentata pentru litere
//fiind globala are valori de 0 initial
int litere[26];
//o sa folosim inca un argument numit semn pentru a face incrementare
//la sirul de litere sau pentru a scade
void extrage_litere(char prop[],int semn){
int i;
for(i=0;i<strlen(prop);i++){
//daca nu este spatiu
if(prop[i]!=' '){
//ma folosesc de faptul ca un caracter mic este la o pozitie fata de 'a'
//la aceeasi distanta cat ar fi pozitia sa in vectorul litere
if(semn==0){
litere[prop[i]-'a']++;
}
else{
litere[prop[i]-'a']--;
}
}
}
}
//daca vectorul de litere a ramas in intregime 0
//inseamna ca toate literele se potrivesc, deci sunt anagrame
void afiseaza(){
int i;
for(i=0;i<26;i++){
//daca numar de aparitii al literei este diferit de 0
//atunci nu sunt anagrame una la cealalta
if(litere[i]!=0){
cout<<"NU";
return;
}
}
//daca nu a returnat deloc, inseamna ca sunt amandoua 0, deci sunt anagrame
cout<<"DA";
return;
}
int main(){
char prima[100],secunda[100];
int i;
cin.getline(prima,99);
extrage_litere(prima,0);
cin.getline(secunda,99);
extrage_litere(secunda,1);
afiseaza();

return 0;
}
Alte întrebări interesante