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 - Kinamox

#1
Programación C/C++ / Re: Punteros
29 Junio 2018, 08:28 AM
Gracias por la respuesta  ;-)
#2
Programación C/C++ / Punteros
29 Junio 2018, 05:59 AM
Hola, tengo una pequeña duda con punteros; al imprimir el resultado muestra 0 y 1 pero no encuentro el motivo. agradezco cualquier aclaración.


#include <stdio.h>

void Ingreso(int*,int*);
void mostrar(int *, int*);

int main(){
int a,b;

Ingreso(&a,&b);
mostrar(&a,&b);

return 0;
}

void Ingreso(int *x, int *y){
printf("Ingresa dos numeros: ");
scanf("%d %d",&x,&y);
}

void mostrar(int *y, int *z){
printf("num1: [%d]",*y);
printf("\nNum2: [%d]",*z);
}
#3
Programación C/C++ / Duda Arbol
31 Mayo 2018, 05:53 AM
Hola, que tal, escribo con la finalidad de que alguien pueda decirme por que motivo no me imprime los datos ingresados, en preorden...Es como si no almacenara los valores ingresados. Espero saldar la duda, gracias de antemano.
Aqui les dejo el código para que me digan por que no almacena los datos.


#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

typedef struct nodo{
int dato;
struct nodo *derecha;
struct nodo *izquierda;
}TTT;

typedef TTT *pNodo;
TTT *arbol = NULL;

/*prototipo*/
TTT *crear(int);
void insertar(TTT *, int);
int preOrden(TTT *);
void menu();

main()
{

menu();

getch();
return 0;
}

/*FUNCION PARA CREAR UN NODO*/
TTT *crear(int n)
{
TTT *nuevo = (pNodo)malloc(sizeof(TTT));
printf("\n Ingresa un nodo: "); scanf("%d",&nuevo->dato);
nuevo->dato = n;
nuevo->derecha = NULL;
nuevo->izquierda = NULL;

return nuevo;
}

/* FUNCION PARA AÑADIR DATOS*/
void insertar(TTT *arbol, int n)
{
if(arbol == NULL)
{
TTT *nuevo = crear(n);
arbol = nuevo;
}
else
{
int ppp = arbol->dato;
if(n < ppp)
{
insertar(arbol->izquierda, n);
}
else
{
insertar(arbol->derecha, n);
}
}
}
/*RECORRIDO EN PREORDEN*/
int preOrden(TTT *arbol)
{
if(arbol == NULL)
{
return ;
}
else
{
printf(" %d -",arbol->dato);
preOrden(arbol->izquierda);
preOrden(arbol->derecha);
}
printf("\n\n\n");
}

//MENU
void menu()
{
int opc,x;

do{
printf("     MENU ARBOL  \n");
printf("1. Insertar nodo\n");
printf("2. PREORDEN\n");
printf("3. Salir\n");
printf("\n  Ingresa una opcion: "); scanf("%d",&opc);

switch(opc)
{
case 1: insertar(arbol,x); break;
case 2: printf("\n Recorrido en preorden: ");
preOrden(arbol); printf("\n\n\n"); break;
case 3: break;
}
system("pause");
system("cls");
}while(opc != 3);
}

#4
Programación C/C++ / Estructura
13 Abril 2018, 06:35 AM
Que tal amigos?, necesito ayuda con este método de ordenamiento (burbuja), he averiguado por todos los medios y no he podido solucionar mi inconveniente, que es mostrar por pantalla los valores ingresados ordenados por el método antes dicho.


#include <stdio.h>

typedef struct rall
{
int valor;
}dato;

dato arreglo[50];

int tamanio(int TAM);
void DigitarValor (dato arreglo[],int p);
void ordenar(int arreglo[],int p);

int main()
{
int p;
p=tamanio(p);
DigitarValor(arreglo,p);
ordenar(arreglo,p);

return 0;
}
int tamanio(int TAM)
{
printf("Introducir dimension del vector: ");
scanf("%i",&TAM);
return TAM;
}
void DigitarValor (dato arreglo[],int p)
{
int i;
for(i=0;i<p;i++){
printf("Digitar valor: ",i+1);
scanf("%i",&arreglo[i].valor);
}
}
void ordenar(int arreglo[],int p)
{
int i,j,PRO;
for(i=0; i<p; i++)
{
for(j=i+1; j<p; j++)
{
if(arreglo[j] > arreglo[j+1])
{
PRO = arreglo[j];
arreglo[j] = arreglo[j+1];
arreglo[j+1] = PRO;
}
}
}
printf("Valores ordenados: \n");
for(i=0;i<p;i++)
{
printf("%i ",arreglo[i]);
}
}


Creo que la solucion es con puntero(me ha costado un poco entenderlo) y he intentado todo lo posible para aplicarlo. Espero que alguien me ilumine en este camino. Les agradezco desde ya.

;D  Saludos :silbar:
#5
Programación C/C++ / Funcion recursiva
7 Abril 2018, 02:25 AM
Buenas, alguien de buen corazón podría darme una idea de como hacer esta funcion recursiva:

An = 2An-1 + 3
A0 = 1

[las que no son negritas son sub-indice]

que corresponde a la sucesión {1,5,13,29,61..}.

por favor, necesito hacer el codigo y no encuentro donde basarme.Les agradezco
saludos.