Foro de elhacker.net

Programación => Programación General => Mensaje iniciado por: smdiegoarmando en 7 Febrero 2013, 05:09 am



Título: Ayuda con el siguiente MENU "programacion en C"
Publicado por: smdiegoarmando en 7 Febrero 2013, 05:09 am
Me toca realizar el siguiente menu
1. Determinar cantidad de veces que un elemento X se encuentra en un vector de tamaño  N
2. Promedio de elementos pares de las filas y las Columnas de una matriz 4x3
3. Ordenar un vector de 10 elementos de forma descendente
4. Ingresar datos en una matriz 4x4 en forma de espiral e imprimir matriz resultante
5. Inicializar con  los datos dados, una Matriz llamada EDADES
             20  45  30   25
             18  20  45   15
             52  33  35   37
             20  30  12   11
calcular los promedios de cada  fila y almacenarlos en un vector A
6.Salir


He encontrado diferentes programas similares a las opciones que me piden sera que pueden ayudarme a UNIFICARLOS?

Aqui estan los siguientes (intente hacerlo yo mismo y me marco error).

OPC N1:

#include <conio.h>
#include <iostream.h>

int nume[10], i, j, max, min, repe, veces;


void main()
{
clrscr();
max=-1;
min=32700; /*maximo para un entero*/
for(i=0; i<10; i=i+1)
{
cout<<"\nINGRESE EL "<<i+1<<"§ NUMERO: ";
cin>>nume;
if (max < nume) max=nume;/*uso el mismo for para buscar el maximo*/
if (min > nume) min=nume;
}
cout << "\nIngrese el numero que quiere verificar si esta repetido: ";
cin >>repe;
veces=0;
for(i=0; i<10; i=i+1)
{
if (nume == repe) veces = veces +1;}
cout << "\El numero: " << repe << " esta' " << veces << " en el vector";
for(i=0; i<10; i=i+1)
{
if (nume == max){
cout << "\nEl Maximo esta en la "<< i + 1 <<" posicion del arreglo y es: "<<max ;
break; }}
for(i=0; i<10; i=i+1){
if (nume == min){
cout << "\nEl minimo esta en la " << i + 1 <<" posicion del arreglo y es: " <<min;
break;}}
getch();
}//fin del programa

Siguiente ejemplo

OPC 3:

#include<iostream>
using namespace std;
 
int ordenar(int[],int);
int imprimir(int[]);
 
int main()
{
  int c,lista[9],ord;
  for(c=0;c<=9;c++)
  {
    cout<<"Numero "<<c+1<<": "; cin>>lista[c];
  }
  cout<<"\nAscendente 1\nDescendente 2\n--> Opción: "; cin>>ord;
  if(ord==1 || ord==2)
  {
    ordenar(lista,ord);
    imprimir(lista);
  }
}
 
int ordenar(int lista[],int ord)
{
  int c1,c2,aux;
  for(c1=0;c1<=9;c1++)
  {
    for(c2=0;c2<9;c2++)
    {
      if(ord==1)
      {
        if(lista[c2]>lista[c2+1])
        {
          aux=lista[c2];
          lista[c2]=lista[c2+1];
          lista[c2+1]=aux;
        }
      }
      else
      {
        if(lista[c2]<lista[c2+1])
        {
          aux=lista[c2];
          lista[c2]=lista[c2+1];
          lista[c2+1]=aux;
        }
      }
    }
  }
  return 0;
}
 
int imprimir(int lista[])
{
int c;
  for(c=0;c<=9;c++)
    cout<<lista[c]<<" ";
  cin.get();cin.get();
}


OPC 4:

#include"conio.h"


#include"stdio.h"


#include"dos.h"


#include<iostream.h>


void main(){



int i,j,sw=0,n,m;


int mat[30][30];


clrscr();


    gotoxy(5,4);cout<<"DIGITE DIMENCION:";


   cin>>n;




 clrscr();


 gotoxy(3,2);cout<<"LLENE LA MATRIZ\n";


for (i =0 ; i <  n ; i++){



    for (j = 0 ;j<  n ; j++){



 gotoxy(j*n+3,i+5);


 cin>>mat[j];


    }


     }


clrscr();


cout<<"MATRIZ NORMAL\n";


for(i=0;i<n;i++){


  for(j=0;j<n;j++){


    cout<<"\t"<<mat[j];


    }


  cout<<"\n";


  }



    j=n-1;


cout<<"\n\nMATRIZ VERTICAL";


for(i=0;i<n;i++){


   sw=1;


   while(sw){



   if(j<0 || j >n-1){


   sw=0;


    if(i%2==0)


    j=0;


    else


    j=n-1;


    cout<<"\n";


    }


   else


   {delay(300);


   gotoxy(10+(i*6),10+(j*2));


   cprintf("%d\n",mat[j]);



   if(i%2==0)


   j--;


   else


   j++;


   }


   }



  }


 getch();


 }

Opc  5:

#include <math.h>
#include <stdio.h>
#include <stdlib.h>
//------------------------------------------------
void lectX(double *x, int n, char c );
void escrX(double *x, int n );
double promX( double *x, int n);
//================================================
int main()
{
double v[40];
int n;
printf("\n Promedio de elementos de un vector.\n\n");
60
5.1. ARREGLOS UNIDIMENSIONALES
printf(" numero de elementos : ");
scanf( "%d", &n);
if( n > 40 ){
printf("\n Numero demasiado grande\n\n");
exit(1);
}
lectX(v, n, 'v');
printf(" v : \n");
escrX(v, n);
printf(" promedio = %lf\n", promX(v, n));
return 0;
}
//================================================
void lectX(double *x, int n, char c )
{
// lectura de los elementos de un "vector".
int i;
for( i = 0; i < n; i++){
printf(" %c(%d) = ", c, i+1);
scanf("%lf", &x );
}
}
//------------------------------------------------
void escrX(double *x, int n )
{
// escritura de los elementos de un "vector".
int i;
int nEltosLin = 5; // numero de elementos por linea
for( i = 0; i < n; i++){
printf("%15.8lf", x);
if( (i+1)%nEltosLin == 0 || i == n-1) printf("\n");
}
}
//------------------------------------------------
double promX( double *x, int n)
{
// promedio de los elementos del 'vector' x
int i;
double s = 0.0;
if( n <= 0 ){
printf(" promX: n = %d inadecuado\n", n);
return 0.0;
}
for( i = 0; i < n; i++) s += x;
return s/n;
}

Es de suma importancia por favor ayudenme en lo que opuedan


Título: Re: Ayuda con el siguiente MENU "programacion en C"
Publicado por: [Case] en 7 Febrero 2013, 16:30 pm
En lugar de intentear unir codigo, es mejor que lo hagas tu mismo.