Este programa usa um Vetor dinâmico, declarado e preparado,
para receber até 21 Números, estabelecido pelo macro #tam.
Se informarmos Números acima de 20, o programa rejeita a entrada, retornando para o início, até que se satisfaça os parâmetros solicitados.
Más, o que mais chama a atenção,é a capacidade que o programa tem de rejeitar Números repetidos, e mostrar ainda, os Números que já foram digitados até o momento.
Satisfazendo as solicitações do programa, ele imprime oficialmente os Números preenchidos nas posições do Vetor,
E na tela seguinte imprime novamente numerando-os, e pergunta no lugar de qual daqueles números deseja fazer a alteração.
Fique sabendo que coloquei restrições aqui também, pois a última posição do Vetor não é aceita, deixo bem claro também
que o programa é capaz de identificar se por acaso o usuário digitar um Número que não está enumerado nas posições do Vetor.
Que ótimo programa, até eu mesmo, depois que venci todo os obstáculos encontrado, fico impressionado com o bom desempenho apresentado.
para receber até 21 Números, estabelecido pelo macro #tam.
Se informarmos Números acima de 20, o programa rejeita a entrada, retornando para o início, até que se satisfaça os parâmetros solicitados.
Más, o que mais chama a atenção,é a capacidade que o programa tem de rejeitar Números repetidos, e mostrar ainda, os Números que já foram digitados até o momento.
Satisfazendo as solicitações do programa, ele imprime oficialmente os Números preenchidos nas posições do Vetor,
E na tela seguinte imprime novamente numerando-os, e pergunta no lugar de qual daqueles números deseja fazer a alteração.
Fique sabendo que coloquei restrições aqui também, pois a última posição do Vetor não é aceita, deixo bem claro também
que o programa é capaz de identificar se por acaso o usuário digitar um Número que não está enumerado nas posições do Vetor.
Que ótimo programa, até eu mesmo, depois que venci todo os obstáculos encontrado, fico impressionado com o bom desempenho apresentado.
Veja algumas imagens abaixo:
Veja o código abaixo:
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#define tam 20
void Janela5(){
int lin, col;
col = 0;
for ( lin = 0; lin <= 25; lin++ ){
for ( col = 0; col <= 80; col++ ){
gotoxy( col, lin );
if ( lin == 2 ){textbackground(LIGHTBLUE);printf( " ");}
if ( col == 1 ){textbackground(LIGHTBLUE);printf(" ");}
if ( lin == 25 ){textbackground(LIGHTBLUE);}
if ( col == 80 ){textbackground(LIGHTBLUE);printf(" ");}
}
}textbackground( BLACK);
}
int main(){
system ("title PREENCHENDO E ALTERANDO UM VETOR");
int a, ac, aut, *A, i , k = 0, j , n, p, x = 0;
int Vetor [ tam ];
int n1;
A = ( int* ) malloc ( tam * sizeof ( int ) );
do{
clrscr();Janela5();
textcolor(LIGHTRED);gotoxy(26,3);printf("PREENCHENDO E ALTERANDO UM VETOR ");
textcolor(LIGHTBLUE);gotoxy(20,5);printf("Informe o total de Números que vai digitar : ");
textcolor(LIGHTRED);scanf("%d", &p);fflush(stdin);
textcolor(LIGHTGREEN);gotoxy(20,9);
if ( p < 0 || p > tam ){
printf("\aNúmero Acima de 0 e menor que %d ", tam );
getche();system("cls");
}
}while ( ( p < 0 ) || ( p > tam ) ) ;
for ( i = 0 ; i <= p ; i++ ){
do{system("cls");Janela5();
textcolor(LIGHTRED);gotoxy(26,3);printf("PREENCHENDO E ALTERANDO UM VETOR ");
textcolor(LIGHTBLUE);gotoxy(32,5);printf("Insira o ");
textcolor(LIGHTRED);gotoxy(40,5);printf(" %do", i + 1);
textcolor(LIGHTBLUE);gotoxy(44,5);printf("Número : ");
textcolor(LIGHTRED); scanf("%d",&n );fflush(stdin);
aut = 0;
for ( j = 0 ; j <= p ; j++ )
if ( n == A [ j ] )
aut = 1;
if ( aut == 0 ){
A [ i ] = n;
Vetor [ x ] = A [ i ];
x++;
}
else{
k = x;
textcolor(LIGHTBLUE);gotoxy(22,7);printf("O Número %d já está inserido No Vetor", n );
textcolor(LIGHTGREEN);gotoxy(22,9);printf("Veja abaixo os Números Digitados até aqui ");
textcolor(LIGHTRED);gotoxy(22,11);
for ( x = 0 ; x < k; x++ ){
printf(" %d ", Vetor [ x ] );
}
getche();
}
}while ( aut == 1 );
}
textcolor(LIGHTBLUE);gotoxy(22,7);printf("Números Digitados");
textcolor(LIGHTRED);gotoxy(22,9);
for ( i = 0 ; i <= p ; i++ ){
printf(" %d ", A [ i ] );
}
getche();
system("cls");do{Janela5();
textcolor(LIGHTRED);gotoxy(26,3);printf("PREENCHENDO E ALTERANDO UM VETOR ");
textcolor(LIGHTBLUE);gotoxy(6,5);printf("Abaixo os %d Números Digitados ", p + 1 );
a = 0;
textcolor(LIGHTRED);
for( i = 0; i <= p; i++ ){
gotoxy(8, i + 7);
a = a + 1;
printf("Nº %d = %d ", a, A [ i ] );}
textcolor(LIGHTBLUE);gotoxy(14,17);
printf("No lugar de qual desses Números deseja Inserir mais um ? : ");
textcolor(LIGHTRED);scanf("%d",&ac);
if( ac > p + 1 ){
textcolor(LIGHTGREEN);gotoxy(14,19);printf("Posição inexistente");
getch();system("cls");continue;
}
if( ac == p + 1 ){
textcolor(LIGHTGREEN);gotoxy(14,19);printf("A última posição não é válida");
getch();system("cls");
}
else{
textcolor(LIGHTGREEN);gotoxy(14,19);printf(" Por favor insira o Número : ");
textcolor(LIGHTRED);scanf("%d",&n1 );
for( i = p ; i >= ac -1; i-- )
A [ i + 1] = A [ i ];
A [ ac -1 ] = n1;
p = p + 1;
a = 1;
textcolor(LIGHTBLUE);gotoxy(46,5);printf("Abaixo, o Vetor alterado");
textcolor(LIGHTRED);
for( i = 0; i <= p; i++ ){
gotoxy(50, i + 7);
printf("Nº %d = %d ", a, A [ i ] );
a++;
}
getch();break;
}
}while( 1 );
textcolor(LIGHTGREEN);gotoxy(14,19);printf("Com a alteração temos %d Números no Vetor", p + 1 );
textcolor(LIGHTRED);gotoxy(34,22);printf("Muito obrigado!");
getch();free( A );
}
#include <stdio.h>
#include <stdlib.h>
#define tam 20
void Janela5(){
int lin, col;
col = 0;
for ( lin = 0; lin <= 25; lin++ ){
for ( col = 0; col <= 80; col++ ){
gotoxy( col, lin );
if ( lin == 2 ){textbackground(LIGHTBLUE);printf( " ");}
if ( col == 1 ){textbackground(LIGHTBLUE);printf(" ");}
if ( lin == 25 ){textbackground(LIGHTBLUE);}
if ( col == 80 ){textbackground(LIGHTBLUE);printf(" ");}
}
}textbackground( BLACK);
}
int main(){
system ("title PREENCHENDO E ALTERANDO UM VETOR");
int a, ac, aut, *A, i , k = 0, j , n, p, x = 0;
int Vetor [ tam ];
int n1;
A = ( int* ) malloc ( tam * sizeof ( int ) );
do{
clrscr();Janela5();
textcolor(LIGHTRED);gotoxy(26,3);printf("PREENCHENDO E ALTERANDO UM VETOR ");
textcolor(LIGHTBLUE);gotoxy(20,5);printf("Informe o total de Números que vai digitar : ");
textcolor(LIGHTRED);scanf("%d", &p);fflush(stdin);
textcolor(LIGHTGREEN);gotoxy(20,9);
if ( p < 0 || p > tam ){
printf("\aNúmero Acima de 0 e menor que %d ", tam );
getche();system("cls");
}
}while ( ( p < 0 ) || ( p > tam ) ) ;
for ( i = 0 ; i <= p ; i++ ){
do{system("cls");Janela5();
textcolor(LIGHTRED);gotoxy(26,3);printf("PREENCHENDO E ALTERANDO UM VETOR ");
textcolor(LIGHTBLUE);gotoxy(32,5);printf("Insira o ");
textcolor(LIGHTRED);gotoxy(40,5);printf(" %do", i + 1);
textcolor(LIGHTBLUE);gotoxy(44,5);printf("Número : ");
textcolor(LIGHTRED); scanf("%d",&n );fflush(stdin);
aut = 0;
for ( j = 0 ; j <= p ; j++ )
if ( n == A [ j ] )
aut = 1;
if ( aut == 0 ){
A [ i ] = n;
Vetor [ x ] = A [ i ];
x++;
}
else{
k = x;
textcolor(LIGHTBLUE);gotoxy(22,7);printf("O Número %d já está inserido No Vetor", n );
textcolor(LIGHTGREEN);gotoxy(22,9);printf("Veja abaixo os Números Digitados até aqui ");
textcolor(LIGHTRED);gotoxy(22,11);
for ( x = 0 ; x < k; x++ ){
printf(" %d ", Vetor [ x ] );
}
getche();
}
}while ( aut == 1 );
}
textcolor(LIGHTBLUE);gotoxy(22,7);printf("Números Digitados");
textcolor(LIGHTRED);gotoxy(22,9);
for ( i = 0 ; i <= p ; i++ ){
printf(" %d ", A [ i ] );
}
getche();
system("cls");do{Janela5();
textcolor(LIGHTRED);gotoxy(26,3);printf("PREENCHENDO E ALTERANDO UM VETOR ");
textcolor(LIGHTBLUE);gotoxy(6,5);printf("Abaixo os %d Números Digitados ", p + 1 );
a = 0;
textcolor(LIGHTRED);
for( i = 0; i <= p; i++ ){
gotoxy(8, i + 7);
a = a + 1;
printf("Nº %d = %d ", a, A [ i ] );}
textcolor(LIGHTBLUE);gotoxy(14,17);
printf("No lugar de qual desses Números deseja Inserir mais um ? : ");
textcolor(LIGHTRED);scanf("%d",&ac);
if( ac > p + 1 ){
textcolor(LIGHTGREEN);gotoxy(14,19);printf("Posição inexistente");
getch();system("cls");continue;
}
if( ac == p + 1 ){
textcolor(LIGHTGREEN);gotoxy(14,19);printf("A última posição não é válida");
getch();system("cls");
}
else{
textcolor(LIGHTGREEN);gotoxy(14,19);printf(" Por favor insira o Número : ");
textcolor(LIGHTRED);scanf("%d",&n1 );
for( i = p ; i >= ac -1; i-- )
A [ i + 1] = A [ i ];
A [ ac -1 ] = n1;
p = p + 1;
a = 1;
textcolor(LIGHTBLUE);gotoxy(46,5);printf("Abaixo, o Vetor alterado");
textcolor(LIGHTRED);
for( i = 0; i <= p; i++ ){
gotoxy(50, i + 7);
printf("Nº %d = %d ", a, A [ i ] );
a++;
}
getch();break;
}
}while( 1 );
textcolor(LIGHTGREEN);gotoxy(14,19);printf("Com a alteração temos %d Números no Vetor", p + 1 );
textcolor(LIGHTRED);gotoxy(34,22);printf("Muito obrigado!");
getch();free( A );
}
Nenhum comentário:
Postar um comentário
Observação: somente um membro deste blog pode postar um comentário.