|
Mostrar Mensajes
|
Páginas: 1 2 3 4 5 [6] 7
|
51
|
Programación / Programación C/C++ / Re:
|
en: 17 Noviembre 2013, 09:01 am
|
ya lo arregle gracias, tenia un error en el while de la funcion ya que nunca entraba en el. saludos
Enviado desde mi Nexus 5 mediante Tapatalk
|
|
|
52
|
Programación / Programación C/C++ / Media de una cadena de caracteres '1' y '0'
|
en: 15 Noviembre 2013, 10:33 am
|
Hola, tengo que realizar un programa que lea de la entrada estandar una cadena compuesta por caracteres '1' y'0' y me diga la media y las veces que se pasa de 0 a 1 y de 1 a 0, debe de omitir cualquier otro caracter. Es decir en 0110. Se debe realizar mediante una funcion que obtenga la cadena y devuelva los dos parametros resultados La media es 0,25 y el numero de saltos es 2 El problema lo tengo en el planteamiento, como no se la longitud que va a tener la cadena he pensado en leerla del teclado primero, despues le paso a la funcion la cadena y con un if diria que cuando cadena = '1' ||'0' le asigno el valor 1 o 0 a una variable auxiliar y a otra variable el valor de cadena[i+1] y asi hasta que se tope con el final de cadena o encuentre otro caracter en cuyo caso dara error, esto estaria bien? O como debo de hacerlo?. Muchas gracias
|
|
|
54
|
Programación / Programación C/C++ / obtener factorial y evitar desbordamiento de memoria con punteros
|
en: 11 Noviembre 2013, 11:51 am
|
hola, tengo que hacer un programa que tenga varias opciones, la primera es la obtencion de un factorial mediante el uso de punteros y funciones de modo que dependiendo de si la variable comprobar es un 1,2 o 0 diga si el numero introducido es negativo, es correcto o ha habido desbordamiento, el problema es que he hecho todo pero al ejecutar el programa no carga y da error, se que el fallo esta en los punteros pero no se como arreglarlo #include<stdio.h> int factorial(int numero,int *pfactorial); int main(void){ int opcion; int numero; int *pfactorial; int comprobar; int factorial; do{ printf("**********MENU**********\n"); printf("1. Factorial de un numero\n"); printf("2. Seno de un angulo\n"); printf("3. Estadisticas de una secuencia digital\n"); printf("4. Evitar n unos seguidos en una secuencia digital\n"); printf("5. Salir del programa\n"); if(opcion>0&&opcion<6){ switch(opcion){ case 1: printf("Introduzca un numero para calcular factorial:"); comprobar=factorial(numero,&factorial); if(comprobar==1){ printf(" Desbordamiento de memoria \n"); } if(comprobar==2){ printf(" El numero introduzido es negativo"); } if(comprobar==0){ printf("El Factorial del numero: %d es: %d \n", numero ,*pfactorial ); } break; case 2: break; case 3: break; case 4: break; case 5: break; default: printf("Elige una opcion valida"); break; } } }while(opcion!=5); return 0; } int factorial(int numero,int *pfactorial){ int i; int auxiliar; int factorial; int comprobar; i=1; auxiliar=1; if(numero<0){ comprobar=2; } if(numero>=0){ while((i<=numero) && (comprobar!=0)){ auxiliar=factorial; factorial=(factorial*i); if((factorial/auxiliar)!=i){ comprobar=1; } i++; } } if((factorial/auxiliar)!=i){ comprobar=0; } (*pfactorial)= factorial; return comprobar; }
|
|
|
56
|
Programación / Programación C/C++ / Re: cifrado cesar en c
|
en: 26 Octubre 2013, 21:06 pm
|
lo he estado mirando pero sigo sin ser capaz de que funcione #include<stdio.h> char cifrar(int desplazamiento, char caracter); char descifrar(int desplazamiento, char caracter); int main(void){ int respuesta; char caracter; int desplazamiento; char caracterConvertido; char cadena[100]; int i=0; int j=0; printf("¿Desea cifrar o descifrar?\n"); do{ printf("Introduce la clave de cifrado\n"); scanf("%d",&desplazamiento ); if(desplazamiento<0){ printf("Introduce un valor valido\n"); } }while(desplazamiento<0); if(respuesta==0){ printf("Introduce el texto a cifrar:"); do{ if((caracter<'A')||(caracter>'Z')){ printf("Error en los caracteres introducidos\n"); } caracterConvertido = cifrar(desplazamiento,caracter); cadena[j]= caracterConvertido; j++; }while(((caracter>='A')&&(caracter<='Z'))||(caracter !='\n')); printf("*** El texto cifrado es (entre flechas): -->"); for(i=0;i<100;i++){ } } if(respuesta==1){ //descifrar(); } return 0; } char cifrar(int desplazamiento, char caracter){ char caracterConvertido; caracterConvertido=caracter + desplazamiento; return caracterConvertido; }
|
|
|
58
|
Programación / Programación C/C++ / cifrado cesar en c
|
en: 26 Octubre 2013, 11:18 am
|
Hola buenos dias, tengo que hacer un programa que encripte y desencripte una secuencia de caracteres en mayuscula mediante el cifrado cesar, pero no logro que arranque se me queda pillado el programa y no se como resolverlo: el problema lo tengo en el scanf del do que no entra e imprime directamente el mensaje de salida diciendo que ha habido un error con el caracter introducido char cifrar(int desplazamiento, char caracter); char descifrar(); int main(void){ int respuesta; char caracter; int desplazamiento; char caracterConvertido; printf("¿Desea cifrar o descifrar?\n"); do{ printf("Introduce la clave de cifrado\n"); scanf("%d",&desplazamiento ); if(desplazamiento<0){ printf("Introduce un valor valido\n"); } }while(desplazamiento<0); if(respuesta==0){ printf("Introduce el texto a cifrar:"); do{ caracterConvertido = cifrar(desplazamiento,caracter); printf("%c",caracterConvertido ); if((caracter<='A')||(caracter>='Z')){ printf("Error en los caracteres introducidos"); } }while(((caracter>='A')&&(caracter<='Z'))||(caracter !='\n')); printf("*** El texto cifrado es (entre flechas): -->"); } if(respuesta==1){ //descifrar(); } return 0; } char cifrar(int desplazamiento, char caracter){ char caracterConvertido; caracterConvertido=caracter + desplazamiento; return caracterConvertido; }
|
|
|
|
|
|
|