Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - aldape23

#1
Programación C/C++ / arreglos con funciones
2 Septiembre 2017, 00:56 AM
Hola, necesito hacer un programa que sea con 3 arreglos, el primero es un vector de n elementos (n se pide al usuario); el segundo es otro vector igual de n elementos; el tercer arreglo es los dos arreglos anteriores ordenados de menor a mayor. tengo que llenar los arreglos mediante una función usando factorial y eso ya lo tengo también se como ordenar un vector solo no entiendo como hacerle para ordenar los dos juntos en uno solo y guardar los elementos del factorial en el arreglo.
AYUDA!!!!
Gracias igual :)

//Este programa saca el factorial de los numeros y los muestra en pantalla solo no se como guardar esos valores para ponerlos en el arreglo que voy a comparar
#include<stdio.h>
#define p printf
#define s scanf
long arreglo1(long);
long arreglo2(long);
main ()
{

int i,j,m,n;
int num;
p("Ingresa el tamaño del vector A:");
s("%d",&m);
p("Ingresa el tamaño del vector B:");
s("%d",&n);
p("Mostrando vector A\n");
for (i=1;i<=m;++i)
p("%2d! = %1d\n",i,arreglo1(i));
p("Mostrando vector B\n");
for (j=1;j<=n;j++)
p("%2d! = %1d\n",j,arreglo2(j));
return 0;
}
long arreglo1 (long num)
{
if (num <= 1)
return 1;
else
return (num*arreglo1(num-1));
}
long arreglo2 (long num)
{
if (num <= 1)
return 1;
else
return (num*arreglo2(num-1));
}


//Este programa pide de un arreglo de n elementos los numeros al usuario y los ordena de menor a mayor
#include<stdio.h>
#define p printf
#define s scanf
void ordenar_numeros(int a[],int lon1)
{
int temp;
for (int i=0;i<lon1;++i)
for (int j=0;j<lon1;++j)
if (a[j]>a[j+1]){
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
for (int i=0;i<lon1;++i)
p("%d\n",a[i]);
}
main ()
{
int lon1,n1;
p("Dame el tamaño del vector A:  ");
s("%d",&lon1);
int a[lon1];
p("Vector A\n");
for (int i=0;i<lon1;++i){
p("Ingresa el numero %d : ",i+1);
s("%d",&n1);
a[i]=n1;
}
p("\n");
p("Numeros ordenados\n");
ordenar_numeros(a,lon1);
return 0;
}
#2
Hola :)
Tengo este código pero me marca un error, ¿Qué puedo hacer?
Me marca el siguiente error:
[Error] invalid types 'int [255][int [500]]' for array subscript

[#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define p printf
#define s scanf
#define SIZE 500
#define freq_size 255

main (int, const char**)
{
int i,j,k,h,x=0;
int answer,rating;
int freq[freq_size]={0};
int  a[SIZE][SIZE];
int m=0,n=0;
p("\n\t\tPROGRAMA QUE CALCULE HISTOGRAMA DE MATRIZ\n");
p("\n\n");
p("Ingresa el numero de columnas de la matriz: ");
s("%i",&n);
p("Ingresa el numero de renglones de la matriz: ");
s("%i",&m);
for (i=0;i<m;++i)
{
for (j=0;j<n;++j)
p("%d ",1+rand() % 255);
p("\n");
}


for (answer=0;answer <= SIZE -1; answer++ )
++freq[a[answer]];
p("%s%17s\n", "Numero", "Repeticiones");
for (rating=1;rating<=freq_size-1;rating++)
p("%6d%17d\n",rating,freq[rating]);
return 0;
}