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

#1
Perfecto,muchas gracias  ;-)
#2
Hola, estoy intentando realizar un programa que inserte un numero de 1 a 9 y busque si esta en otra cifra pedida, ejemplo:
introduzco el 5, introduzco el 167457, y me dice que el 5 esta en la cifra.
Pero no funciona y no le encuentro el fallo, por un lado tengo un problema a la hora de contar las cifras y finalmente no funciona.
¿Me podríais echar una mano? Gracias de antemano.

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

#define TAM 20

int main()
{

    printf("*** CIFRAS ***\n\n");

    int i,num,cifra,resto[TAM];
    int semaforo=0;
    int potencia=10;
    int longitud=1;
    int copia_cifra;

    //introduzco un numero de 1 a 9
    printf("Intrduce un entero de 1 a 9:\n");
    scanf(" %d",&num);

    while(num>9||num<1)
    {
      printf("ERROR. Intrduce un entero de 1 a 9");
    scanf(" %d",&num);
    }

    //introduzco una cifra mayor que 0
    printf("Intrduce una cifra mayor que 0:\n");
    scanf(" %d",&cifra);

    while(cifra<1)
    {
        printf("ERROR. Intrduce una cifra mayor que 0:\n");
        scanf(" %d",&cifra);
    }

    copia_cifra=cifra;
    //Aqui obtengo el numero de cifras que tiene mi numero
    while(copia_cifra/10>0)
    {
        copia_cifra=copia_cifra/10;
        longitud++;
    }

    //Divido la cifra por decena centenas etc y averiguo si coincide con el numero pedido
    for(i=0;i<longitud&&semaforo!=1;i++)
        {
        resto[i]=cifra%(potencia^(i+1));
        return 0;
        if(resto[i]==num)semaforo=1;
        else if(resto[i]/(potencia^i)==num)semaforo=1;

        }

    if(semaforo==1)printf("\nEl numero aparece en la cifra");
    else if(semaforo==0)printf("\nEl numero NO aparece en la cifra");

    return 0;
}
#3
Aaahh vale, perfecto, ahora lo entiendo, muchas gracias ;-)
#4
pero en qué momento aparece la división 21/2? No es b/2 que es 0? saludos.
#5
Hola a todos, tengo una dudilla con este código:
#include <stdio.h>
int ff (int a, int b) {
if (a <= b/2) { return 1; }
else { return 0; }
}
void main () {
char msg[]="Informatica Aplicada";
int a = sizeof(msg)/sizeof(msg[0]), b=0;
do {
if (ff(b, a) == 0) {
printf("|%c|", msg[b]);
}
++b;
} while (b<a-1);
printf("\nFin ;-)\n");
}



En el printf, lo que muestra por pantalla,no se por qué me aparece por pantalla esto:
| |, es decir, el primer caracter del do while, cuando b en ese momento vale 11, no entiendo pr qué vale 11, no se si me explico. Un saludo a todos y gracias de antemano.