Este Programa faz uso de uma alocação dinâmica, para reservar memórias para um vetor.
Más se o usuário digitar um número negativo, ou zero, ou maior que 9 será reprovado.
O Programa é muito simples e fácil de entender, feito especialmente a iniciantes de Linguagem C
que estão começando a estudar alocação dinâmica.
Vale lembrar que o número é sequencial, portanto sem teclar enter a cada dígito.
Criado no eclipse, e rodando sem nenhum warnings por aqui., na versão do MinGw que uso.
Eis Algumas imagens do Programa abaixo:
Eis o Código Abaixo:
Más se o usuário digitar um número negativo, ou zero, ou maior que 9 será reprovado.
O Programa é muito simples e fácil de entender, feito especialmente a iniciantes de Linguagem C
que estão começando a estudar alocação dinâmica.
Vale lembrar que o número é sequencial, portanto sem teclar enter a cada dígito.
Criado no eclipse, e rodando sem nenhum warnings por aqui., na versão do MinGw que uso.
Eis Algumas imagens do Programa abaixo:
Eis o Código Abaixo:
#include <stdio.h>
#include <conio.h>
#include <string.h>
int tam;
void Janela5 ( ) {
int lin, col;
col = 0;
for ( lin = 2; lin <= 24 ; lin++ )
for ( col = 2; col <= 78 ; col++ ) {
gotoxy ( col , lin );
textbackground ( WHITE );
printf ( " " );
}
}
int main ( ) {
system ( "title
FATORIAL EM VETOR DINAMICO" );
int *vet;
vet = ( int* ) malloc ( tam * sizeof(int) );
char *numStr = "-1";
free ( vet );
int i, num, aux, ord;
int CONTADOR = 1;
int FATORIAL = 1;
system ( "cls" );
Janela5 ( );
textcolor ( VERMELHOCLARO );
gotoxy ( 29 , 3 );
printf ( "FATORIAL EM
VETOR DINAMICO" );
textcolor ( PRETO );
gotoxy ( 24 , 5 );
printf ( "Programa
desenvolvido por:" );
textcolor ( CINZAESCURO );
gotoxy ( 51 , 5 );
printf ( "Samuel
Lima" );
textcolor ( VERDECLARO );
gotoxy ( 34 , 7 );
printf ( "sa_sp10@hotmail.com" );
textcolor ( AZULCLARO );
gotoxy ( 27 , 9 );
printf ( "Informe o
tamanho do Vetor: " );
textcolor ( VERMELHOCLARO );
scanf ( "%d" , &tam );
fflush ( stdin );
while ( tam < 1 || tam > 9 ) {
textcolor ( VERMELHOCLARO );
gotoxy ( 25 , 11 );
printf ( "\aNem Zero,
Nem Numeros Negativos" );
textcolor ( VERMELHOCLARO );
gotoxy ( 25 , 12 );
printf ( "Nem Maior que
9 Sao Aceitos" );
Sleep ( 2800 );
main ( );
}
textcolor ( AZULCLARO );
gotoxy ( 14 , 11 );
printf ( "Digite um
numero inteiro de %d algarismo: " , tam );
textcolor ( VERMELHOCLARO );
for ( i = 0; i < tam ; i++ ) {
scanf ( "%d" , &num );
fflush ( stdin );
if ( num == atoi ( numStr ) ) {
break;
}
textcolor ( AZULCLARO );
gotoxy ( 14 , 13 );
printf ( "Numeros
Digitados: " );
textcolor ( VERMELHOCLARO );
for ( i = 0; i < tam ; i++ ) {
aux = num % 10;
num = num / 10;
vet [ i ] = aux;
vet [ i ] = aux;
printf ( " %d " , vet [ i ] );
}
getche ( );
textcolor ( AZULCLARO );
gotoxy ( 14 , 15 );
printf ( "Numeros
Armazenadosdos Num Vetor: " );
textcolor ( VERMELHOCLARO );
for ( i = 0; i < tam ; i++ ) {
printf ( " %d" , vet [ i ] );
}
}
getche ( );
textcolor ( AZULCLARO );
gotoxy ( 14 , 17 );
printf ( "Numeros
Ordenados: " );
textcolor ( VERMELHOCLARO );
ord = 0;
while ( ord == 0 ) {
ord = 1;
for ( i = 0; i < tam ; i++ ) {
if ( vet [ i ] > vet [ ( i + 1 ) ] ) {
aux = vet [ i ];
vet [ i ] = vet [ ( i + 1 ) ];
vet [ ( i + 1 ) ] = aux;
ord = 0;
}
}
}
for ( i = 1; i < tam + 1 ; i++ )
printf ( " %d " , vet [ i - 1 ] );
textcolor ( PRETO );
gotoxy ( 33 , 23 );
printf ( "PRESSIONE
QUALQUER TECLA" );
getche ( );
system ( "cls" );
Janela5 ( );
textcolor ( VERMELHOCLARO );
gotoxy ( 29 , 3 );
printf ( "FATORIAL EM
VETOR DINAMICO" );
for ( i = 0; i < tam ; i++ ) {
while ( CONTADOR <= vet [ i ] ) {
FATORIAL *= CONTADOR;
CONTADOR += 1;
}
textcolor ( AZULCLARO );
printf ( "\n\n\t
Fatorial de " );
Sleep ( 500 );
textcolor ( VERMELHOCLARO );
printf ( " %d " , vet [ i ] );
Sleep ( 500 );
textcolor ( AZULCLARO );
printf ( " Equivale a
" );
Sleep ( 500 );
textcolor ( VERMELHOCLARO );
printf ( " %d " , FATORIAL );
Sleep ( 500 );
}
textcolor ( PRETO );
gotoxy ( 33 , 23 );
printf ( "O ROCCO
AGRADECE" );
getche ( );
exit ( 0 );
}
Nenhum comentário:
Postar um comentário
Observação: somente um membro deste blog pode postar um comentário.