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

#1
Muchas gracias!

Funciono perfecto y lo explicaste de manera excepcional.

Saludos!
#2
Estimados,
buenas tardes.

Necesito hacer un codigo que me permite ingresar una descripcion por cada cada articulo de un vector.

Lo tengo hasta ahora es lo siguiente:

Funcion

void validarVectorDesc(char* [], int);

Main

validarVectorDesc(des, TAM_DES);

Funcion Codificada

void validarVectorDesc(char *desc[TAM], int LS)
{
do
        puts("Ingrese descripcion de articulo: ");
        gets(*desc);
while(strlen(*desc) < LS);
}


Siento tener un problema en la lógica pero no logro descifrar cual.

Desde ya muchas gracias!
#3
Programación C/C++ / Re: Ayuda con ejercicio
3 Julio 2018, 01:39 AM
Muchas gracias a ambos!

Saludos.
#4
Programación C/C++ / Ayuda con ejercicio
19 Junio 2018, 02:45 AM
Estimados,
buenas noches.

Estoy intentando crear un programa que me imprima el mayor elemento de un vector:

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

int buscarMayor(int *p);

int main()
{
    system("color 0a");
    int vec[5] = {1, 4, 5, 2, 2},
        mayor;
    mayor = buscarMayor(vec);
    printf("El mayor es: %d", mayor);
    return 0;
}

int buscarMayor(int *p)
{
    int may = *p;
    while(*p)
        if (*p > may)
            may = *p;
        p++;
    return may;
}


El código compila bien pero al ejecutarlo el programa queda en negro y no sucede nada.

Muchas gracias!
#5
Programación C/C++ / Error con arreglos
23 Agosto 2017, 21:28 PM
Estimados,
buenos dias.

Serian tan amables de indicarme que error estoy cometiendo en el siguiente programa.
La idea es insertar un nuevo elemento en un arreglo de enteros pero sin eliminar ni pisar nada. Es decir, si el arreglo cuenta con 5 elementos, se debe ingresar uno nuevo, de acuerdo a la posicion ingresada por teclado y correr el resto para no perder nada.

El error que me da es que se pisa el contenido del elemento 3 y el 6 me arroja basura.

Desde ya muchas gracias.

#include <stdio.h>
#include <stdlib.h>
#define TAM 20

int ingresarVector (int vec[TAM]);
void insertarElemento (int vec[TAM], int cant);
void mostrarVector (int vec[TAM], int cant);

int main ()
{
    system ("color 0a");
    int vec[TAM],
        cant;
    cant = ingresarVector (vec);
    insertarElemento (vec, cant);
    mostrarVector (vec, cant);
    return 0;
}

int ingresarVector (int vec[TAM])
{
    int i,
        cant;
    printf ("Ingrese cantidad de elementos: ");
    scanf ("%d", &cant);
    for (i=0; i<cant; i++)
    {
        printf ("\n\nIngrese elementos: ");
        scanf ("%d", &vec[i]);
    }
    return cant;

}

void insertarElemento (int vec[TAM], int cant)
{
    int i,
        pos,
        ele;
    cant++;
    printf ("\n\nIngrese posicion de insercion: ");
    scanf ("%d", &pos);
    printf ("\n\nIngrese elemento: ");
    scanf ("%d", &ele);
    for (i=cant-1; i<pos; i--)
        vec[i] = vec[i-1];
    vec[pos-1] = ele;
}

void mostrarVector (int vec[TAM], int cant)
{
    int i;
    cant++;
    for (i=0; i<cant; i++)
        printf ("\nPosicion: %d, Elemento: %d", i+1, vec[i]);
        printf ("\n");
}
#6
Muchas gracias!
#7
Estimados,

Serian tan amables de indicarme por que este programa me indica que debe haber una coma, un punto y coma o un parentesis antes de la variable "cad1".

La idea del programa es verificar si una frase es palindromo, pero por favor, no respondan la resolución del mismo.

Gracias!

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define TAM 40

int verificarPalindromo (char[TAM] cad1, char[TAM] cad2);

int main()
{
   system ("color 0a");
   char cad1[40],
        cad2[40];
   printf ("Ingrese la cadena: \n\n");
   gets (cad1);
   if (!verificarPalindromo (cad1, cad2))
       puts ("La cadena es un palindromo");
   else
       puts ("La cadena no es un palindromo");
   return 0;
}

int verificarPalindromo (char[TAM] cad1, char[TAM] cad2)
{
   char *ini,
        *fin;
   ini = cad2;
   fin = cad1;
   while(*fin)
   {
       *ini = *fin;
       fin++;
   }
   return strcmp (cad1, cad2);
}
#8
Muchas gracias a todos!

Un saludo.
#9
Perdon,

Ya corregi el codigo, pero aun me sigue sumando un dia de mas en los meses de 30 dias.

void calcularFechaSiguiente (tFecha *fecha)
{
    if(fecha->mes == 4 || fecha->mes == 6 || fecha->mes == 9 || fecha->mes == 11)
    {
        if(fecha->dia == 30)
        {
            fecha->dia = 1;
            fecha->mes++;
        }
        else
            fecha->dia++;
    }
    if(fecha->mes == 2)
    {
        if (fecha->año % 4 == 0 && fecha->año % 100 != 0 || fecha->año % 400 == 0)
        {
            if(fecha->dia == 29)
            {
                fecha->dia = 1;
                fecha->mes++;
            }
            else
                fecha->dia++;
        }
        if(fecha->dia == 28)
        {
            fecha->dia = 1;
            fecha->mes++;
        }
        else
            fecha->dia++;
    }
    if(fecha->mes == 1 || fecha->mes == 3 || fecha->mes == 5 || fecha->mes == 7 || fecha->mes == 8 || fecha->mes == 10)
    {
        if(fecha->dia == 31)
        {
            fecha->dia = 1;
            fecha->mes++;
        }
        else
            fecha->dia++;
    }
    if(fecha->mes == 12)
    {
        if(fecha->dia == 31)
        {
            fecha->dia = 1;
            fecha->mes = 1;
            fecha->año++;
        }
        else
            fecha->dia++;
    }
}
#10
Estimado,

Gracias por tu respuesta. Surgio otro problema dentro del primer programa y es que cuando ingreso un dia 30 y un mes 4, el resultado obtenido es 2/05/17. No puedo hallar el error.

Gracias!