@Ionut1598,
Nu știu ce-i Mathlab, dar îți las rezolvarea pentru a 2-a problemă mai jos, poți lejer s-o traduci în ce vrei tu:
Legat de prima problemă, n-ai un exemplu de cod să-mi dai? Presupun că va fi un număr de 13 cifre, fiecare cifră separată printr-o liniuță, nu? Dacă te descurci să o traduci din C++, ți-o pot face și pe aceasta
#include <iostream>
#include <algorithm>
// #include <stdio.h>
void bubbleSort(float Perimetre[], int Elemente)
{
for(int i=0; i<Elemente; i++)
for(int j=i; j<Elemente; j++)
if (Perimetre[i] > Perimetre[j])
{
float aux = Perimetre[i];
Perimetre[i] = Perimetre[j];
Perimetre[j] = aux;
}
}
int main()
{
/*
Se citesc de la tastatura diametrele a N cercuri
Deci noi trebuie sa citim prima data acel N numar
*/
int N;
std::cin >> N;
/*
Vrem sa citim cele N diametre
Stim ca diametrul unui cerc este egal cu 2r
Deci d = 2r => r = d/2
*/
float Perimetre[50]; // Consideram ca N va fi mai mic decat 51, aici stocam cele N perimetre ce ni le cere problema
float Diametru, Raza, pi = 3.14;
for (int i = 0; i < N; i++)
{
// Aflam raza cercului
std::cin >> Diametru;
Raza = Diametru / 2;
/*
Calculam:
Aria Cercului: pi * r^2
Perimetrul Cercului: 2 * pi * r
si le afisam in ordinea aceasta
*/
std::cout << i + 1 << ". " << pi * (Raza * Raza) << " " << 2 * pi * Raza << std::endl;
/*
Alternativa pentru afisare folosind libraria stdio.h
printf("%d. %0.2f %0.2f", i + 1, pi * (Raza * Raza), 2 * pi * Raza);
*/
Perimetre[i] = 2 * pi * Raza;
}
/*
Acum ordonam vectorul cu perimetrele in ordine crescatoare
Aici avem mai multe alternative
Ori folosim functia sort din libraria algorithm, ori ne facem noi propriul algoritm de sortare
*/
std::sort(Perimetre, Perimetre + N); // Metoda 1
bubbleSort(Perimetre, N); // Metoda 2
// Afisam perimetrele
for (int i = 0; i < N; i++)
std::cout << Perimetre[i] << " ";
}