UTNianos

Versión completa: Parcial Algoritmo y Estructuras de Datos
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Me ayudan con la codificacion del siguiente Ejercicio..

Un vendedor de alarmas solicita un programa para entregar con cada producto vendido una clave. Se debe procesar N productos.
Para ello le pide al cliente que concrete la compra que ingrese 10 números que se usarán para generar la clave. Si la suma de los números es mayor a 100, la clave es el primer primo superior a la suma, si no, la clave es el mayor de los números ingresados pares. Para cada producto mostrar la clave generada y clacular la cantidad de claves mayores a 520.
¿Qué intentaste? ¿Qué es lo que te está trabando?
Me trabe en la parte de calcular el primo, por ahora tengo esto
Cita:#include <stdio.h>
#include <conio.h>

int main ()
{
int n,i,c=0;
printf("Ingresar un numero\n");
scanf("%d",&n);

for (i=1;i<=n;i++)
{
if (n%i==0) c++;
}
if(c==2)printf("El numero es primo");
else printf("El numero no es primo");
}
PRIMOS - C++

PRIMO C

Pegale una googleada a estas cosas... el 99% de las cosas que necesites hacer ya están hechas, y simplemente tenes que buscar cual es la opcion que mejor se acerca a lo que necesitas.

Ojo, lo que te pasé no es que va de una a Copy&Paste, pero seguro, te ayuda como guia...
Ya se como se calcula el primo en C++, pero mi problema es hacer lo siguiente:
la clave es el primer primo superior a la suma , O sea, si es si, no se que operacion ahcer para calcular el primer primo superior a la suma
Tenes que calcular el primer número primo, como te dije antes, pero a diferencia de que empiece por cualquier lado, tiene que empezar con una cota inferior...

Supon, ingresa
10 10 10 10 10 10 10 10 10 11

La suma es 111... entonces, tenes que ir a buscar el primer primo después de 111...


Que haría yo dado que es Algoritmos (una materia de primer año):
  • Separar en partes lo que te pide
  • Una vez modulado el problema, pasarlo a papel
  • Cuando lo tengas el papel, pasa cada parte a código... como si fuera una funcion
  • armá main() que use las funciones
  • y ahi cuando tengas la cosa armada, recien ponele la logica de "si es mayor a 100"...


Es normal que en los primeros programas cueste ver esto... Te pongo un ejemplo pavote, en el "cacho de código" que pusiste vos, solo te deja ingresar un número... a menos que esté oculto un manejo de arrays y/o listas... cuando lo que te pide es "Ingrese 10 valores"... A este tipo de cosas es que hago referencia cuando digo "modula"...

probalo y vemos de volver a ayudarte! =)
(20-05-2014 19:34)fagu24 escribió: [ -> ]Me trabe en la parte de calcular el primo, por ahora tengo esto
Cita:#include <stdio.h>
#include <conio.h>

int main ()
{
int n,i,c=0;
printf("Ingresar un numero\n");
scanf("%d",&n);

for (i=1;i<=n;i++)
{
if (n%i==0) c++;
}
if(c==2)printf("El numero es primo");
else printf("El numero no es primo");
}

Ese codigo que pase esta mal, te pase ese por equivocacion, tengo esto hecho:
Cita:#include <stdio.h>
#include <conio.h>

int main ()
{
int n,num,suma=0;
printf("Ingresar n productos ");
scanf("%d",&n);
for (int i=1;i<=n;i++)
{
printf("Ingresar 10 numeros");
for (int k=1;k<=10;k++)
{
scanf("%d",&num);
suma=suma+num;
}
}

}
Lo que haria yo seria que a la variable suma se vaya incrementando de a 1 y se vaya preguntando si es primo y luego si lo es, hace cierta accion. Pero no recuerdo como hacerlo
URLs de referencia