Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- void seq(int n, int **ordens, int *tam) {
- int i = 0;
- while (n != 1) {
- (*ordens)[i] = n;
- i++;
- *ordens = (int *)realloc(*ordens, (i + 1) * sizeof(int));
- tam[0] = i;
- if (n % 2 == 0) {
- n = n / 2;
- } else {
- n = 3 * n + 1;
- }
- }
- }
- //salvar as sequencias num arquivo é o próximo passo
- //ler em um arquivo vai ser o seguinte
- int main() {
- int n;
- int *num = NULL;
- int *tamanho = NULL;
- num = (int *)malloc(1 * sizeof(int));
- tamanho = (int *)malloc(1 * sizeof(int));
- tamanho[0] = 1;
- if (num == NULL) {
- printf("Falha na alocação de memória.\n");
- return 1;
- }
- printf("Digite o número inicial: ");
- scanf("%d", &n);
- seq(n, &num, tamanho);
- printf("\na sequencia tem %d casas:\n", tamanho[0]);
- for(int i = 0; i < tamanho[0] ; i++){
- printf("%d\n", num[i]);
- }
- free(num);
- return 0;
- }
Add Comment
Please, Sign In to add comment