Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*CABEÇALHO
- Arquivo: LISTA 08 - Exercício 13.c
- Objetivo: Desenvolver uma lista crescente de números primos.
- Autor(a): Ramon Borges.
- */
- #include <stdio.h>
- #include <stdlib.h>
- //PROTÓTIPO DE FUNÇÕES
- int* criaPrimos(int qtde);
- int main()
- {
- int qtde, *numeros, i;
- printf("Informe a quantidade exata de numeros primos que deseja: ");
- scanf("%d", &qtde);
- numeros = criaPrimos(qtde);
- for(i = 0; i < qtde; i++)
- printf("%d ", *(numeros+i));
- free(numeros);
- return 0;
- }
- int* criaPrimos(int qtde)
- {
- /*Definição:
- >>Números primos são os números naturais que têm apenas dois divisores diferentes: o 1 e ele mesmo.*/
- int *p, geradorNum, numeroPrimos;
- geradorNum = 2;
- numeroPrimos = 0;
- p = (int*) malloc(qtde*sizeof(int));
- while(numeroPrimos < qtde)
- {
- if(geradorNum == 2 || geradorNum == 3 || geradorNum == 5 || geradorNum == 7)
- {
- p[numeroPrimos] = geradorNum;
- numeroPrimos++;
- }
- else if(geradorNum % 2 != 0 && geradorNum % 3 != 0 && geradorNum % 5 != 0 && geradorNum % 7 != 0)
- {
- p[numeroPrimos] = geradorNum;
- numeroPrimos++;
- }
- geradorNum++;
- }
- return p;
- }
Advertisement
Add Comment
Please, Sign In to add comment