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ú

Temas - GROV

#1
GNU/Linux / Problema con Wine y Dev C++.
4 Noviembre 2012, 20:18 PM
Hola a todos, veran, utilizo Fedora 17, y tengo Wine instalado, instale el Dev C++ (prefiero Geany), pero no por gusto, sino por que en la escuela me piden que utilize conio, (si lo hago sin conio, y funciona igual, esta mal, tiene que ser con conio... en fin ya que), asi que por eso me vi en la penosa necesidad de instalar el Dev C++ y conio.

Pero al ejecutar un pequeño programa solo para verificar que todo funciona bien:



#include <stdio.h>
#include <conio2.h>

int main(){
    gotoxy(10,10);
    printf("Conio");
    getch();
   
    return 0;
}


Me compila perfectamente, no me marca ningún error, solo que no se muestra lo que es la terminal (más bien el cmd que viene junto con wine), ya vi y no es el problema de que ocupa detenerse al final, nada de que se abre y cierra casi instantaneamente, simplemente no se abre.

Intente ejecutar directamente el cmd (.wine/drive_c/windows/system32/cmd.exe) y no se ejecuta.

Alguien sabe como arreglar esto?
Se los agradecería mucho.
#2
Buenas noches a todos, bueno veran, generalizando estoy haciendo un programa para una clase en la escuela el cual tiene un menu con switch y do_while que, en los casos, utiliza caracteres. El problema que tengo es que cuando introduzco algo asi como:

aefs

el programa primero se va al caso 'a', doy un enter y se va al caso 'e', luego al caso 'f', despues como no tengo caso 's' entra al default, después de pasar por cada caso me regresa al menu, mi duda es que podria hacer para que al introducir de nuevo

aefs

solo me tome encuenta el primer caracter, entre a ese caso independientemente del que sea y vuelva al menu, osea que solo me tome el primer caracter y los demás me los ignore.

De antemano muchas gracias, y espero me puedan ayudar.

Saludos!
#3
Programación C/C++ / Hola Mundo!
10 Septiembre 2012, 01:36 AM
Hola que tal, así es mi duda es en relación al "Hola Mundo", resulta que en un articulo sobre las entrevistas laborales a programadores en USA, venían varias preguntas que  les hacen, pero esta en especial llamo mi atención:

Citar¿Cómo escribirías imprimirías Hola Mundo en C sin usar un solo ";"?

Es posible?
#4
GNU/Linux / Problema de sonido.
18 Agosto 2012, 23:18 PM
Hola que tal, bueno les cuento un poco mi historia:

Todo comenzo con mi lap (ACER 5520) usaba Ubuntu 10.10, de pronto una vez no se escuchaba, creí que era por que tenia el volumen bajo, pero el revisar me decia algo como "Salida Estereo para Torpes" o algo así, ahora si que a aveces al encencer la lap si habia sonido otras veces no, inclusive cambie de distro a Opensuse, Linux Mint, Arch Linux, Kubuntu, Lubuntu, Fedora (en principio creí que era algo de la distro), al cambiarme de distro todo iba bien, pero siempre terminaba no escuchando nada, solo cuando quería la lap se escuchaba.

Reinstale alsa, e hice un monton de cosas que encontrba en foros, y en un principio me servian pero después volvía a lo mismo, lo que quiero saber es si el problema ya es algo relacionado con el hardware (es la teoría que tengo), aunque ya me acostumbre a trabajar asi, quisiera saber el porque de esto, o si a alguien ya le ha pasado.

Saludos!!!
#5
Windows / Problema de registro de Windows.
16 Agosto 2012, 18:35 PM
Hola que tal, mi problema reside en le registro de windows, al hacer limpieza con el TuneUp Registry Cleaner siempre me marca un error:

{08B0E5C0-4FCB-11CF-AAA5-00401C608501}
--------------------------------------
La clave "HKEY_CLASSES_ROOT\CLSID\{08B0E5C0-4FCB-11CF-AAA5-00401C608501}\TreatAs" hace referencia al CLSID "HKEY_CLASSES_ROOT\CLSID\{CAFEEFAC-0000-0000-0000-ABCDEFFEDCBB}" ausente.


Ya he buscado por todos lados y no encuentro como solucionarlo, por lo que visto esa dirección tiene algo que ver con Java pero no estoy muy seguro.

Ya me estoy desesperando asi que si alguien me puede ayudar con esto se lo agradecería mucho.

Tengo Win7 Ultimate 64-bit
#6
Que tal, veran este programa en teoria genera un número al azar para cada elemento de un arreglo multidimensional, si me compila pero al momento de la ejecución me aparece que el programa dejo de funcionar, y no logro encontrar el error. Aquí les dejo el código:

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

int main()
{
int random[10][10][10];
int a, b, c;

for (a = 0; a <= 9; a++){
for (b = 0; b <= 9; b++){
for (c = 0; b <= 9; c++){
random[a][b][c] = rand();
}
}
}

for (a = 0; a <= 4; a++){
for (b = 0; b <= 4; b++){
for (c = 0; b <= 4; c++)
printf("\nRandom[%d][%d][%d] = %d\n", a, b, c, random[a][b][c]);
}
}



Lo compilo en Windows 7, y lo probé con CodeBlocks, Zinjai y Dev-C++
#7
Que tal, buen dia a todos, a continuación les traigo algunos programas que he hecho, son muy básicos la verdad, pero creo que para los que se inician en la programación les seran de mucha ayuda.

Almenos yo estuve buscando varios de estos programas cuando los estaba haciendo para darme una idea, y nunca los encontré, por eso se los pongo aquí.

Numero de Euler.

Código (cpp) [Seleccionar]
\\Calcula el numero de Euler

#include <stdio.h>

int main()
{
  int fact, n, i;
  float e;

  e = 1;
  fact = 1;

  printf("Introduzca la exactitud deseada de e: ");     \\Por ejemplo, si se introduce 5 calcula hasta 1/5!
  scanf("%d", &n);

  i = n;

  while(n > 0){
     fact *= n;
     n--;
  }

  while (i > 0){
     e += 1/(float)fact;
     fact /= i;
     i--;
  }

  printf("El valor aproximado de e es %f\n", e);

  return 0;
}


Numero de Euler a la x.

Código (cpp) [Seleccionar]
\\ Calcula el valor de e elevado a la x.

#include <stdio.h>
#include <math.h>

int main()
{
  int fact, n, i,a, x;
  float e;

  e = 1;
  fact = 1;

  printf("Introduzca la exactitud deseada de e: ");
  scanf("%d", &n);
  printf("Introduzca la potencia de e: ");
  scanf("%d", &a);

  i = n;

  while(n > 0){
     fact *= n;
     n--;
  }

  x = pow(a,i);

  while (i > 0){
     e += x/(float)fact;
     fact /= i;
     x = x / a;
     i--;
  }

  printf("El valor de e elevado a la %d es %f\n", a, e);

  return 0;
}


cifra un numero de 4 digitos.

Código (cpp) [Seleccionar]
\\ cifra un numero de 4 digitos.

#include <stdio.h>

int main()
{
int numero, a, b, c, d;

printf("Introduce un numero de 4 digitos para ser cifrado: ");
scanf("%d", &numero);

d = numero % 10;
numero /= 10;
c = numero % 10;
numero /= 10;
b = numero % 10;
numero /= 10;
a = numero % 10;

a = (a + 7) % 10;
b = (b + 7) % 10;
c = (c + 7) % 10;
d = (d + 7) % 10;

printf("Encriptacion Exitosa!!\n");
printf("Numero generado: %d%d%d%d\n\n", c, d, a, b);

return 0;
}


descifra numero de 4 digitos. cifrados con el programa de arriba.

Código (cpp) [Seleccionar]
\\ descifra un numero de 4 digitos.

#include <stdio.h>

int main()
{
int numero, a, b, c, d;

printf("Introduzca el numero a descifrar: ");
scanf("%d", &numero);

d = numero % 10;
numero /= 10;
c = numero % 10;
numero /= 10;
b = numero % 10;
numero /= 10;
a = numero % 10;

if (a > 7)
a -= 7;
else
a += 3;
if (b > 7)
b -= 7;
else
b += 3;
if (c > 7)
c -= 7;
else
c += 3;
if (d > 7)
d -= 7;
else
d += 3;

printf("Desencriptacion Exitosa!\n");
printf("Numero descifrado: %d%d%d%d\n", c, d, a, b);

return 0;
}


Crea un Cuadrado de n x n hueco.

Código (cpp) [Seleccionar]
#include <stdio.h>

int main()
{
int fila, columna, lado;

fila = 1;

printf("Introduce el tamaño del cuadrado: ");
scanf("%d", &lado);

while (fila <= lado){
columna = 1;

while (columna <= lado){
if (fila == 1 || fila == lado)
printf("*");
else if (columna == 1 || columna == lado)
printf("*");
else
printf(" ");

columna++;
}

printf("\n");
fila++;
}

return 0;
}


Crea un cuadrado de *.

Código (cpp) [Seleccionar]
#include <stdio.h>

int main()
{
  int lado, fila, columna;
  fila = 1;

  printf("Introduzca el tamaño del lado: ");
  scanf("%d", &lado);

  while (fila <= lado){
     columna = 1;

     while (columna <= lado){
        printf("*");
        columna++;
     }

  fila++;
  printf("\n");
  }

  return 0;
}


Determina si un numero de 5 digitos es un palindromo.

Código (cpp) [Seleccionar]
#include <stdio.h>

int main()
{
int numero, a, b, c, d;

printf("Introduce un numero de 5 digitos: ");
scanf("%d", &numero);

a = numero % 10;
numero /= 10;
b = numero % 10;
numero /= 100;
c = numero % 10;
numero /= 10;
d = numero % 10;

if (a == d && b == c)
printf("El numero es palindromo!\n");
else
printf("EL numero no es palindromo!\n");

return 0;
}


Factorial con un ciclo while.
Código (cpp) [Seleccionar]

#include <stdio.h>

int main()
{
int fact, num;

printf("Ingrese un numero: ");
scanf("%d", &num);
fact = 1;

while (num >= 1){
fact *= num;
num--;
}


printf("El factorial es %d\n", fact);

return 0;
}


Factorial con un ciclo for.

Código (cpp) [Seleccionar]
#include <stdio.h>

int main()
{
int fact, num, i;

printf("Ingrese un numero: ");
scanf("%d", &num);
fact = 1;

for (i = 1; i <= num; i++){
fact *= i;
}


printf("El factorial es %d\n", fact);

return 0;
}


Muestra el mayor de 10 numeros introducidos.

Código (cpp) [Seleccionar]
#include <stdio.h>

int main()
{
int count, number, largest;

count = 1;
largest = 0;

while(count <= 10){
printf("Introduzca el numero de unidades vendidas: ");
scanf("%d", &number);

if (number > largest)
largest = number;

count += 1;
}

printf("\nEl mayor numero de unidades vendidas es de %d\n", largest);

return 0;
}


Al introducir un numero de 5 cifras, separa cifra por cifra con 3 espacios.

Código (cpp) [Seleccionar]
#include <stdio.h>

int main()
{
  int a, b, c, d, e, num;

  printf("Introduzca un numero de 5 digitos: ");
  scanf("%d", &num);

  e = num % 10;
  num /= 10;
  d = num % 10;
  num /= 10;
  c = num % 10;
  num /= 10;
  b = num % 10;
  num /= 10;
  a = num;

  printf("%d   %d   %d   %d   %d\n", a, b, c, d, e);

  return 0;
}


Conversor de Unidades. (Volumen, Area, Longitud, Peso).

Código (cpp) [Seleccionar]
#include <stdio.h>

int menu(void);
void longitud(void);
void volumen(void);
void peso(void);

int main()
{
int opcion;

opcion = menu();

switch(opcion)
{
case 1:
longitud();
break;
case 2:
volumen();
break;
case 3:
peso();
break;
default:
puts("La opcion no es valida...");
puts("\nFIN DEL PROGRAMA");
break;
}

return 0;
}

int menu(void)
{
int opcion;

puts("Bienvenido al Conversor de Unidades\n");
puts("Que tipo de conversion desea realizar:");
puts("1.- Medidas de longitud y superficie");
puts("2.- Medidas de volumen");
puts("3.- Medidas de peso");
puts("\nSeleccione una opcion: ");
scanf("%d", &opcion);

return opcion;
}

void longitud(void)
{
int opcion;
float medida, resultado;

puts("Medidas de Longitud y Superficie\n");
puts("Que tipo de conversion desea realizar:");
puts("1.- Pulgadas a Milimetros");
puts("2.- Yardas a Metros");
puts("3.- Millas a Kilometros");
puts("4.- Pulgadas cuadradas a Centimetros cuadrados");
puts("5.- Pies cuadrados a Metros cuadrados");
puts("6.- Acres a Hectareas");
puts("7.- Millas cuadradas a Kilometros cuadrados");
puts("\nSeleccione una opcion: ");
scanf("%d", &opcion);

switch(opcion)
{
case 1:
puts("Ingrese un numero de pulgadas: ");
scanf("%f", &medida);
resultado = medida * 25.40;
printf("%.2f pulgadas = %.2f milimetros", medida, resultado);
break;
case 2:
puts("Ingrese un numero de yardas: ");
scanf("%f", &medida);
resultado = medida * 0.9144;
printf("%.2f yardas = %.2f metros", medida, resultado);
break;
case 3:
puts("Ingrese un numero de millas: ");
scanf("%f", &medida);
resultado = medida * 1.6093;
printf("%.2f millas = %.2f kilometros", medida, resultado);
break;
case 4:
puts("Ingrese un numero de pulgadas cuadradas: ");
scanf("%f", &medida);
resultado = medida * 6.452;
printf("%.2f pulgadas cuadradas = %.2f centimetros cuadrados", medida, resultado);
break;
case 5:
puts("Ingrese un numero de pies cuadrados: ");
scanf("%f", &medida);
resultado = medida * 0.09290;
printf("%.2f pies cuadrados = %.2f metros cuadrados", medida, resultado);
break;
case 6:
puts("Ingrese un numero de yardas cuadradas: ");
scanf("%f", &medida);
resultado = medida * 0.8361;
printf("%.2f yardas cuadradas = %.2f kilometros cuadrados", medida, resultado);
break;
case 7:
puts("Ingrese un numero de acres: ");
scanf("%f", &medida);
resultado = medida * 0.4047;
printf("%.2f acress = %.2f hectareas", medida, resultado);
break;
case 8:
puts("Ingrese un numero de millas cuadradas: ");
scanf("%f", &medida);
resultado = medida * 2.59;
printf("%.2f millas cuadradas = %.2f kilometros cuadrados", medida, resultado);
break;
default:
puts("La opcion no es valida...");
puts("\nFIN DEL PROGRAMA");
break;
}
}

void volumen(void)
{
int opcion;
float medida, resultado;

puts("Medidas de Volumen\n");
puts("Que tipo de conversion desea realizar:");
puts("1.- Pies cubicos a metros cubicos");
puts("2.- Yardas cubicas a Metros cubicos");
puts("3.- Pintas a Litros");
puts("4.- Galones a Litros");
puts("\nSeleccione una opcion: ");
scanf("%d", &opcion);

switch(opcion)
{
case 1:
puts("Ingrese un numero de pies cubicos: ");
scanf("%f", &medida);
resultado = medida * 0.02832;
printf("%.2f pies cubicos = %.2f metros cubicos", medida, resultado);
break;
case 2:
puts("Ingrese un numero de yardas cubicas: ");
scanf("%f", &medida);
resultado = medida * 0.7646;
printf("%.2f yardas cubicas = %.2f metros cubicos", medida, resultado);
break;
case 3:
puts("Ingrese un numero de pintas: ");
scanf("%f", &medida);
resultado = medida * 0.56826;
printf("%.2f pintas = %.2f litros", medida, resultado);
break;
case 4:
puts("Ingrese un numero de galones: ");
scanf("%f", &medida);
resultado = medida * 4.54609;
printf("%.2f galones = %.2f litros", medida, resultado);
break;
default:
puts("La opcion no es valida...");
puts("\nFIN DEL PROGRAMA");
break;
}
}

void peso(void)
{
int opcion;
float medida, resultado;

puts("Medidas de Volumen\n");
puts("Que tipo de conversion desea realizar:");
puts("1.- Onzas a Gramos");
puts("2.- Libras a Kilogramos");
puts("3.- Tonelada inglesa a Toneladas");
puts("\nSeleccione una opcion: ");
scanf("%d", &opcion);

switch(opcion)
{
case 1:
puts("Ingrese un numero de onzas: ");
scanf("%f", &medida);
resultado = medida * 28.35;
printf("%.2f onzas = %.2f gramos", medida, resultado);
break;
case 2:
puts("Ingrese un numero de libras: ");
scanf("%f", &medida);
resultado = medida * 0.45358;
printf("%.2f libras = %.2f kilogramos", medida, resultado);
break;
case 3:
puts("Ingrese un numero de toneladas inglesas: ");
scanf("%f", &medida);
resultado = medida * 1.0160;
printf("%.2f toneladas inglesas = %.2f toneladas", medida, resultado);
break;
default:
puts("La opcion no es valida...");
puts("\nFIN DEL PROGRAMA");
break;
}
}



Por el tiempo solo pongo estos, espero que les sean de ayuda.

Se que muchos programas no estan escritos de la mejor manera, pero funcionan bien. Y no es por excusarme ni nada de eso pero son de los primeros programas que comenze a escribir tal cual los puse aquí.

Espero sus comentarios, dudas, consejos, sugerencias, todo se agradece.

Saludos Afectuosos!!
#8
Que tal, bueno veran acabo de instalar Arch en una lap y al momento de actualizar con

pacman -Syu

me aparece:

:: Sincronizando las bases de datos de paquetes...
core está actualizado
extra está actualizado
:: Los siguientes paquetes deben instalarse primero:
     pacman
:: ¿Desea cancelar la operación actual
:: y actualizar estos paquetes ahora? [S/n] S

resolviendo dependencias...
verificando conflictos...

Objetivos (13): linux-api-headers-3.32-1   glibc-2.15-10   libarchive-3.0.4-1
                       libssh2-1.4.1-1   curl-7.25.01   pth-2.0.7-4   libksba-1.2.0-1
                       libassuan-2.0.3-1   pinentry-0.8.1-3   dirmngr-1.1.0-4   gnupg-2.0.19-2
                       gpgme-1.3.1-4   pacman-4.0.3-1

Tamaño total de descarga:    0.0 MB
Tamaño total instalado:    55.62 MB

¿continuar con la instalación? [S/n] S
(13/13) verificando la integridad de los paquetes         [####################] 100%
(13/13) verificando conflictos entre archivos               [####################] 100%
error: error al realizar la transacción (archivos en conflicto)
glibc: /usr/bin/tzselect existe en el sistema de archivos
glibc: /usr/sbin/zdump existe en el sistema de archivos
glibc: /usr/sbin/zic existe en el sistema de archivos
Ocurrieron errores, no se actualizaron paquetes



alguien me podría ayudar??
#9
Programación C/C++ / Duda con main()
8 Abril 2012, 01:53 AM
Que tal a todos, bueno verán he tenido una gran duda desde que me inicie a programar en C, y es acerca de la función main(), verán me he encontrado en diferentes libros varias maneras diferentes de escribir la función main(), y realmente estoy algo confundido de cual es la manera correcta de escribirla.

La más básica que me he topado es:

main()
{
     /* Aquí va el código */
}


donde el main() va solito.

Otra es:

void main(void)
{
    /* Aquí va el código */
}


La que yo utilizo es la siguiente:

int main(void)
{
    /* Aquí va el código */
}

Esta es la que uso ya que es la que me dijo mi profesor de programación, que como main es una función se debe especificar el tipo de dato que regresa, y al poner el void como parámetro, quiere decir que no va a regresar ningún valor, por eso se puede omitir el return 0;

Y buscando código por internet me encontrado con:

main ()
{
    /* Aquí va el código */
}


int main()
{
    /* Aquí va el código */

    return 0;
}


Y hay más variantes todavía, pero me gustaría saber cual es realmente la manera correcta de escribir la función, cuando se utiliza el return 0;, cuando se pone como parámetro el void, cuando no, y esas cosas.

Saludos afectuosos!!