Dudas respecto a una matriz que pasa a un arreglo
Publicado por Roberto (5 intervenciones) el 14/03/2019 17:56:13
Buenos días, tengo un problema al hacer un programa en C++
El chiste del programa es hacer una matriz de n*m*p, con números aleatorios entre 50 y 100, después pasar esos números a un arreglo donde solo se muestren números entre 60 y 70, lo que sigue es hacer que esos números queden ordenados de menor a mayor y al final sacar el promedio.
Aquí esta el codigo que hice pero me marca muchos errores.
Si alguien me puede ayudar con este programa sería genial.
El chiste del programa es hacer una matriz de n*m*p, con números aleatorios entre 50 y 100, después pasar esos números a un arreglo donde solo se muestren números entre 60 y 70, lo que sigue es hacer que esos números queden ordenados de menor a mayor y al final sacar el promedio.
Aquí esta el codigo que hice pero me marca muchos errores.
Si alguien me puede ayudar con este programa sería genial.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#include <iostream>
#include<conio.h>
#include <time.h>
#include<stdlib.h>
#include<stdio.h>
using namespace std;
int main(){
int n,p,m,i,j,k,num,z,aux,suma,s,promedio,l;
int m1[n][m][p],a1[n*m*p],a2[n*m*p],pos,r;
cout<<"Ingrese el numero de columnas"<<endl;
cin>>m;
cout<<"Ingrese el numero de capas"<<endl;
cin>>p;
cout<<"Ingrese el numero de renglones"<<endl;
cin>>n;
srand(time(NULL));
cout<<"Matriz"<<endl;
for (i=0;i<n;i++){
for(j=0;j<m;j++){
for(k=0;k<p;k++){
num=rand()%50+50;
m1[i][j][k]=num;
printf("Matriz [%d,%d,%d]= %d\n",i,j,k,num);
}
}
}
z=0;
a1[z];
cout<<"Arreglo"<<endl;
for(i=0;i<n;i++){
for(j=0;j<m;j++){
for(k=0;k<p;k++){
if(a1[z]=m1[i][j][k]>=60&&m1[i][j][k]<=70){
a1[z]=m1[i][j][k];
printf("%d",a1[z]);
}
z++;
}
}
}
s=a1[z];
for(i=1;i<s;i++){
j=i;
aux=a1[i];
while(j>0&&aux<a1[j-1]){
a1[j]=[j-1];
j--;
}
a1[j]=aux;
}
printf("Arreglo acomodado\n");
for(i=0;i<s;i++){
printf("%d\n",a1[z]);
}
z--;
suma=0;
for(int i=0;i<z;i++){
suma=a1[i];
}
promedio=suma/z;
printf("El promedio es: %d",promedio);
return 0;
}
Valora esta pregunta


0