Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: Superr29 en 6 Julio 2012, 05:39 am



Título: Ayuda con programacion en c! "Urgente porfavor"
Publicado por: Superr29 en 6 Julio 2012, 05:39 am
Suponga que se tiene la librería funPro.h que contiene las funciones cuyos prototipos son los siguientes:
 
int siPrimo(long a);  // si a > 0 es primo (1 = si; 0 = no)
int siAbundante(long a);  // si a > 0 es abundante (mayor suma de sus factores propios)
int prodDigilong a);  // producto dígitos de a > 0
int sumFactDigi(long a);  // suma factoriales dígitos de a
int diaSiguiente(int a[]);  // día siguiente a fecha válida en a (día mes año)
int siFeo(long a);  // si a > 0 es feo (1 = si; 0 = no) [feo solo factores a 2,3,5]
 
Para cada enunciado siguiente redacte un programa C que lo resuelva incluyendo la libreria funPro.h e invocando una o más de las funciones cuyos prototipos acaban de ser dados. Por ejemplo, el sigiente programa obtiene y despliega los 1ros t primos:

#include <stdio.h>
#include <funPro.h>

int main()
{
   // primeros n primos (asume funPro.h y siPrimo()

   int t = 100, i = 0; // cantidad de primos, posición
   long c = 2; // candidato a primo

   while (i < t)
   {
      if (primo(c))
      {
         printf("%ld", c);
         i++;
      }

      c++;
   }

   return 0;
}

1. Obtener y desplegar los numeros positivos abundantes en el intervalo (a, b).
2. Obtener y desplegar los primeros t enteros positivos que son iguales a la suma de los factoriales de sus digitos.


Título: Re: Ayuda con programacion en c! "Urgente porfavor"
Publicado por: Anvil en 6 Julio 2012, 06:11 am
Código
  1. #include <stdio.h>
  2. #include <funPro.h>
  3.  
  4. int main()
  5. {
  6.   // primeros n primos (asume funPro.h y siPrimo()
  7.  
  8.   int t = 100, i = 0; // cantidad de primos, posición
  9.   long c = 2; // candidato a primo
  10.  
  11.   while (i < t)
  12.   {
  13.      if (primo(c))
  14.      {
  15.         printf("%ld", c);
  16.         i++;
  17.      }
  18.  
  19.      c++;
  20.   }
  21.  
  22.   //1. Obtener y desplegar los numeros positivos abundantes en el intervalo (a, b).
  23.   int a = 0;
  24.   int b = 100;
  25.   i = a;
  26.   while(i <= b)
  27.   {
  28.   if(siAbundante(a))
  29.   {
  30.   print("%i", a);
  31.   }
  32.   i++;
  33.   }
  34.  
  35.   // 2. Obtener y desplegar los primeros t enteros positivos que son iguales a la suma de los factoriales de sus digitos.
  36.   t = 100;
  37.   i = 0;
  38.   while(i <= t)
  39.   {
  40.      if (sumFactDigi(i))
  41.      {
  42.         printf("%ld", i);
  43.      }
  44.  
  45.      i++;
  46.   }
  47.  
  48.   return 0;
  49. }
  50.  


Título: Re: Ayuda con programacion en c! "Urgente porfavor"
Publicado por: Superr29 en 6 Julio 2012, 15:39 pm
Gracias Anvil pero no me compila :S


Título: Re: Ayuda con programacion en c! "Urgente porfavor"
Publicado por: 0xDani en 6 Julio 2012, 21:55 pm
Por el enunciado se entiende que la libreria es hipotetica.

Saludos.