Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.

devair1010

Membros Plenos
  • Total de itens

    1.481
  • Registro em

  • Última visita

  • Qualificações

    0%

Reputação

908

Informações gerais

  • Cidade e Estado
    rio de janeiro/rj
  • Sexo
    Prefiro não dizer
  1. @PaulaFabiana seu código está bom, mas está com erro na função particiona, o pivo precisa ser dividido por 2 , então modifiquei essa parte do código e ele ficou assim : #include <stdio.h> #include <conio.h> #include <time.h> int comparacao,trocas; void quicksort(int valores[], int inicio, int fim) { int i, j, pivo, aux; i = inicio; j = fim-1; pivo = valores[(inicio + fim) / 2]; while(i <= j){ while(valores[i] < pivo && i < fim) i++; while(valores[j] > pivo && j > inicio) j--; comparacao++; if(i <= j){ trocas++; aux = valores[i]; valores[i] = valores[j]; valores[j] = aux; i++; j--; } } if(j > inicio){ comparacao++; quicksort(valores, inicio, j+1); } if(i < fim){ comparacao++; quicksort(valores, i, fim); } } int main() { int i; clock_t tempo; tempo = clock(); srand(time(NULL)); int array[10] = {5, 8, 1, 2, 7, 3, 6, 9, 4, 10}; printf("Numeros Aleatorios --> "); for(i = 0; i < 10; i++){ array[i]=rand()%10+1; printf("%d ",array[i]); } printf("\n"); quicksort(array, 0, 10); printf("Numeros Ordenadados -> "); for(i = 0; i < 10; i++) printf("%d ",array[i]); for( i = 0; i < 99999999; ++i) {} printf("\n\nTempo : -----> %.2f",(clock() - tempo) / (double)CLOCKS_PER_SEC); printf("\n\nComparacoes -> %d",comparacao); printf("\nTrocas ------> %d\n\n",trocas); return 0; }
  2. @lohayne27 para postar seu código é melhor usar o botão <> que está lá na barra de ferramentas da janela de responder, pois senão o código fica faltando alguns caracteres como os [ i ] que sumiram do seu código , e você pode contar os dígitos do número sem necessidade dessa função e o resultado dela nem foi usado, então seu código com algumas modificações ficaria assim : #include <stdio.h> #include <stdlib.h> int contdigitos(int n); int main() { int n,i=0,cont; int *v; /*int nd=contdigitos(n);*/ /*//como vetor é dinâmico ,usei a função malloc*/ v =(int*) malloc (n*sizeof(int)); printf("digite um numero: "); scanf("%i",&n); while(n>0/*for (i=0;i<nd;i++*/){ v[i]=n%10; n/=10; i++; cont++; /*printf("%i",v);*/ /*if (n<=0) break;*/ } printf("\nDigitos Invertidos Com Vetor ----> "); for(i=0;i<cont;i++) printf("%d ",v[i]); printf("\n\n"); return 0; }
  3. @albert igo sim, pode remover essa função verifica_cod e também a verifica_pos() e também a chamada dessa função lá dentro da função consulta .
  4. @XXXGABIRU seu código está bom , mas estava com alguns erros, então apenas organizei e ele ficou assim : #include <stdio.h> #include <stdlib.h> #define RETORNA_MENU 0 #define MAX_X 100 #define MAX_NOME 100 #define MAX_TELEFONE 10 int qtdContatos = 0; char Contatos_Totais[MAX_X][MAX_NOME]; char Telefones_Totais[MAX_X][MAX_TELEFONE]; void MostraMenu (); void MostraMenu (); void Listagem_Contatos(); void Listagem_Contatos(); void cadastrar (); void Remover_Contato (); void Buscar_Contato (); int main(){ char **ptrNomes,op='s'; char **ptrTelefones; ptrNomes = &Contatos_Totais; ptrTelefones = &Telefones_Totais; int opcao; while(opcao != 6){ MostraMenu(); scanf("%d",&opcao); switch(opcao){ case 1: /*// ADICIONA CONTATO A LISTA.*/ cadastrar(); break; case 2: /*// REMOVE CONTATO DA LISTA.*/ Remover_Contato(); break; case 3: /*// FAZ A LISTAGEM DE TODOS OS CONTATOS CADASTRADOS.*/ Listagem_Contatos(); break; case 4: /*// BUSCA informações INDIVIDUAIS DE UM CONTATO.*/ Buscar_Contato(); break; /*case 5: // EDITA informações DE UM CONTATO. Editar_Contato(); break;*/ case 6: printf("Saindo Da Agenda . . . !\n\n"); return 0; default: printf("Opcao incorreta.\n\n"); } } } void MostraMenu(){ system("cls"); printf("\n====== AGENDA TELEFONICA ======\n\n"); printf("\n============ MENU =============\n" ); printf("Informe a opcao desejada:\n" ); printf("1) Adicionar um contato a agenda.\n" ); printf("2) Remover um contato da agenda.\n" ); printf("3) Lista de contatos cadastrados da agenda.\n"); printf("4) Buscar contato na agenda.\n"); printf("5) Editar contato da agenda.\n"); printf("6) Sair.\n\n"); } void Remover_Contato(){ char flag='p',nome[20]; int j,w; printf("Digite o nome para remover "); fflush(stdin); gets(nome); for(j=0;j<qtdContatos;j++){ if(strcmp(nome,Contatos_Totais[j])==0){ for(w=j;w<qtdContatos;w++){ strcpy(Contatos_Totais [w],Contatos_Totais [w+1]); strcpy(Telefones_Totais[w],Telefones_Totais[w+1]); flag='w'; qtdContatos--; } } } if(flag=='p')printf("Contato Inexistente !\n"); else printf("Contato Removido Com Sucesso !\n"); system("pause"); } void cadastrar(){ char op; do{ printf("\n-- Cadastro de novo contato --\n"); printf("Nome do contato: "); fflush(stdin); gets(Contatos_Totais[qtdContatos]); printf("Telefone do contato: "); fflush(stdin); gets(Telefones_Totais[qtdContatos]); printf("Contato Cadastrado!\n\n"); qtdContatos++; printf("Quer Cadastra Outro S/N"); fflush(stdin); scanf("%c",&op); }while(op!='n'); } void Listagem_Contatos(){ int i = 0; int j = 0; printf("\n======= LISTA DE CONTATOS CADASTRADOS =======\n"); if(qtdContatos==0)printf("Não Tem Nenhum Cadastro\n"); for(j=0;j<qtdContatos;++j){ printf("*** Contato %d ***\n",j+1); printf("Nome: ----- %s\n",Contatos_Totais[ j]); printf("Telefone: - %s\n",Telefones_Totais[j]); printf("\n"); } system("pause"); } void Buscar_Contato(){ char nom[20]; int i,j,flag=0; system("cls"); printf("\n Digite O Nome "); fflush(stdin); gets(nom); for(i=0;i<qtdContatos;i++){ if(strcmp(nom,Contatos_Totais[i])==0){ flag=1; printf("Encontrado O Cadastro %d\n",i+1); printf("Nome: ----- %s\n",Contatos_Totais[i]); printf("Telefone: - %s\n",Telefones_Totais[i]); printf("\n"); } } if(flag==0)printf("Cadastro Não Encontrado !\n"); system("pause"); }
  5. acrescentei outra figura geométrica invertendo a direção que ela gira : #include <windows.h> #include <math.h> #include <conio.h> #include <tchar.h> static int i; LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ; int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow){ static TCHAR szAppName[] = TEXT ("Connect") ; HWND janela ; MSG msg ; WNDCLASS wndclass ; wndclass.style = CS_HREDRAW | CS_VREDRAW ; wndclass.lpfnWndProc = WndProc ; wndclass.cbClsExtra = 0 ; wndclass.cbWndExtra = 0 ; wndclass.hInstance = hInstance ; wndclass.hIcon = LoadIcon (NULL, IDI_APPLICATION) ; wndclass.hCursor = LoadCursor (NULL, IDC_ARROW) ; wndclass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH) ; wndclass.lpszMenuName = NULL ; wndclass.lpszClassName = szAppName ; if (!RegisterClass (&wndclass)){ MessageBox (NULL, TEXT ("Program requires Windows NT!"), szAppName, MB_ICONERROR) ; return 0 ; } janela = CreateWindow (szAppName, TEXT ("Desenhar Uma Estrela"), WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hInstance, NULL) ; ShowWindow (janela, iCmdShow) ; UpdateWindow (janela) ; while (GetMessage (&msg, NULL, 0, 0)){ TranslateMessage (&msg) ; DispatchMessage (&msg) ; } return msg.wParam ; } LRESULT CALLBACK WndProc (HWND janela, UINT message, WPARAM wParam, LPARAM lParam){ HDC tela ; static TCHAR frase[] = _T("Tecle ESC Para Sair !"); PAINTSTRUCT ps ; int j; tela = GetDC (janela) ; switch (message){ case WM_COMMAND: return 0; case WM_KEYDOWN: if (wParam == VK_ESCAPE){ PostQuitMessage (0) ; return 0 ; } return 0; case WM_PAINT : tela = BeginPaint (janela, &ps) ; TextOut(tela, 650, 50, frase, _tcslen(frase)); MoveToEx( tela,static_cast<int>(cos(i*3.141615/180)*200+300), static_cast<int>(sin(i*3.141615/180)*200+250),0) ;//posição de inicio da estrela for(j=0;j<5;j++){ LineTo(tela,static_cast<int>(cos((i+ j*72+36)*3.141615/180)*100+300) , static_cast<int>(sin((i+ j*72+36)*3.141615/180)*100+250));//vai para essas posições LineTo(tela,static_cast<int>(cos((i+(j+1)*72)*3.141615/180)*200+300) , static_cast<int>(sin((i+(j+1)*72)*3.141615/180)*200+250)); } MoveToEx( tela,static_cast<int>(sin(i*3.141615/180)*100+700), static_cast<int>(cos(i*3.141615/180)*100+250),NULL) ;//posição de inicio do quadrado for(j=1;j<5;j++) LineTo(tela,static_cast<int>(sin((i+ j*90+00)*3.141615/180)*100+700) , static_cast<int>(cos((i+ j*90+00)*3.141615/180)*100+250));//vai para essas posições i++; if(i>360)i=0; Sleep(50); InvalidateRect (janela, NULL, TRUE) ;//limpa a tela EndPaint (janela, &ps) ; return 0 ; case WM_DESTROY: PostQuitMessage (0) ; return 0 ; } return DefWindowProc (janela, message, wParam, lParam) ; }
  6. @Hegner Carvalho no python é preciso identar o código direitinho, senão ele dá erros, então quando você coloca o while então na linha de baixo você precisa dar alguns espaços, digamos aí uns quatro espaços , e em seguida você escreve o print para imprimir os números de 1 até 100, e para fazer a soma você usa normalmente o sinal de adição " + " , para imprimir apenas os números pares precisa usar o comando mod 2 e se o resultado for zero é par senão é ímpar , para pegar os números x e y use o comando input . poste seu código para vermos como está e em que podemos ajudar .
  7. @aidam para definir o tamanho do vetor, se o usuário sabe quantas posições será necessário e então peça para o usuário informar a quantidade e então crie o vetor já informando essa quantidade , depois pegue o número que você quer separar, e use o comando mod 10 que na linguagem c / c++ é % , se o número estiver na base 10, colocando o resultado no vetor, um em cada posição do vetor, porém os dígitos estarão invertidos , então há duas opções : 1) imprima os números que estão no vetor de trás para frente começando do último . ou 2) use um loop indo de zero até na metade do vetor e invertendo os número que estão no final com os que estão no início . e imprima normalmente do começo para o fim do vetor .
  8. @lohayne27 você quer usar vetor ou ponteiro ? esse que você colocou é um ponteiro e um vetor seria assim : int vetor[100]; então no lugar de cifra=n%10; e dentro do do / while coloque assim : vetor[i] = n%10;/* com vetor */ v[i] = n%10;/* com ponteiro */ i++; e depois do while use um loop indo de zero até cont e imprima os números que estarão no vetor informando a posição que o número está no vetor, assim : printf("\nDigitos Invertidos Com Vetor ----> "); for(i=0;i<cont;i++) printf("%d",vetor[i]);
  9. @DL.Fernandes digamos que o x seja o valor inicial e o y o valor final, então coloque o rand() % com o valor y e somado o valor x assim ele gera números na faixa estipulada, entre x e y, agora para que não haja números repetidos, precisa ir guardando os números gerados em um vetor, ou pode ser em variáveis mas serão muitas variáveis, e usar um loop, para assim ir comparando o número gerado com todos os números que estão no vetor, e se o número for igual à algum que já esteja lá, então descarta esse número duplicado e gera outro , e a cada número gerado e testado que não estiver no vetor você decrementa o total de quantidade de números que você pediu , assim enquanto essa quantidade for maior que zero ele repete e escolhe outro número, e quando for menor ou igual a zero ele passa e imprime os números gerados .
  10. @lohayne27 o comando for não ficou bom, por isso use do / while , então no lugar do for coloque assim : do/*for(i=0;i<n;i++)*/{ e depois do printf coloque assim : }while(n>0);
  11. @Alexandre Caribé não, o default não faz isso , então você pode usar o comando do / while assim : do{ printf("Digite o número correspondente ao seu voto e aperte ENTER: "); scanf("%d",&v); switch(v) . . códigos . . }while(v!=0 && v!=51 && v!=34 && v!=11 ?&& v!=10 && v!=15);
  12. @albert igo melhor usar uma função para cada caso, assim use essa função de listar apenas para isso , e para alterar um cadastro você pede um dado do cadastro , que pode ser o nome ou o telefone, e procura no struct, e encontrando o cadastro você pede para inserir o novo dado , por exemplo o telefone, então você coloca esse novo dado no struct na posição onde esse cadastro foi encontrado, assim : printf("Telefone Atual %d\n",cliente[cont].telefone); printf("Digite O Novo Telefone "); fflush(stdin); gets(cliente[cont].telefone); então se estiver usando cont para fazer a busca , será nesse mesmo cont que o novo dado será colocado . aqui esse seu código mais organizado : void list(){ /*// todos os clientes*/ int cont; system("cls"); printf("------------------------------------------------------------\n"); printf(" CLIENTES CADASTRADOS \n"); printf("------------------------------------------------------------\n"); for(cont=0;cont<pos;cont++){ printf("\nTelefone: ---- %d\nNome: -------- %s",cliente[cont].telefone,cliente[cont].nome ); printf("\nAvenida/Rua: - %s\nQuadra: ------ %s",cliente[cont].endereco,cliente[cont].quadra ); printf("\nLote: -------- %s\nComplemento: - %s",cliente[cont].lote ,cliente[cont].complemento); printf("\nSetor: ------- %s\nCidade: ------ %s",cliente[cont].setor ,cliente[cont].cidade ); printf("\n-------------------------------------------------------------------\n"); } system("pause"); }
  13. @PimpolhoTaDeOlho para fazer essas pausas você pode colocar um contador que seja zerado antes dos loops e dentro do terceiro loop depois do printf você incrementa o contador e verifica se ele é == 20 e se for então zera o contador e faz a pausa usando o comando getch() ; ou system( " pause " ) ;
  14. @Juresquema Eletrono o código completo é esse que está aí acima, apenas acrescente o system("pause") ; antes do return 0 ; .
  15. @albert igo seu código está bom , precisa organizar melhor, e ele mostra sempre o primeiro cadastro porque ele está cadastrando na mesma posição, então você precisa usar um contador que seja uma variável global para que ela possa ser usada em qualquer parte do programa, e que mantenha o mesmo valor dentro do programa e apenas possa ser incrementada na hora de cadastrar, e decrementada na função excluircliente ,então coloquei essa variável pos como sendo o contador de cadastro , e precisa usar o else junto com os if's e o switch / case é mais apropriado do que o if nesse caso , então seu código com algumas modificações ficaria assim : #include<stdio.h> #include <ctype.h> #include<conio.h> #include<stdlib.h> #include<string.h> #include<locale.h> #define DBASE 200 /*!< Tamanho do vetor */ #define SIZEDB 10 struct cadastro{ int telefone; char nome [200]; char endereco [200]; char quadra [200]; /*// É char não int*/ char lote [200]; /*// É char não int*/ char complemento [200]; char setor [200]; char cidade [200]; int vazio,cod; }; struct descricao_stt{ char string[ 20 ]; }; struct produtoc{ struct descricao_stt descricao; int quantidade; int codigo; float valor; }; /* VARIABLE GLOBAL */ /* Variáveis globais / Escopo de Programa / Públicas */ struct produtoc DBase[ SIZEDB ]; int verifica_cod(int telefonecod ); void cadastrop(int telefone,int pos ); int verificar_pos (); void consulta (); void consulta_nome (); void consulta_telefone (); void excluircliente (); int produtos_cadastros (); void produtos_cadastrados (); void posicao (); void mosta_letra (); int pos; int tela[7][80]; /* bit 0 1 2 3 4 5 6 7 */ int letras[6][7] ={{ 28, 34, 65, 65,127, 65, 65}, /* letra A*/ { 60, 66, 1, 1,113, 98, 92}, /* letra G*/ { 63, 1, 1, 31, 1, 1, 63}, /* letra E*/ { 65, 67, 69, 73, 81, 97, 65}, /* letra N*/ { 31, 33, 65, 65, 65, 33, 31}, /* letra D*/ { 28, 34, 65, 65,127, 65, 65}};/* letra A*/ struct cadastro cliente[ DBASE ]; /* Definir tamanho do Vetor */ int main (){ setlocale(LC_ALL,""); posicao(); int opcao ,telefonecliente,retorno,posicao,consultacliente,produto; float total; struct cadastro cliente[ DBASE ]; do{ system ("cls"); mosta_letra(); printf("================================================================================"); printf("================================================================================"); printf("========================| 1 - Novo Pedido |====================="); printf("========================| 2 - consulta cliente |====================="); printf("========================| 3 - Alterar pedido |====================="); printf("========================| 4 - Alterar endereço |====================="); printf("========================| 5 - Produtos |====================="); printf("========================| 6 - Excluir pedido |====================="); printf("========================| 7 - Excluir cliente |====================="); printf("========================| 8 - Sair do sistema |====================="); printf("================================================================================"); printf("================================================================================"); printf("======================== | DIGITE UMA OPÇÃO | ====================="); printf(" ----- \n"); printf(" | |\n"); printf(" | "); scanf ("%d",&opcao); switch(opcao){ case 1: consulta(); printf("\nFazer o pedido \n"); produtos_cadastros(); produtos_cadastrados(); system("pause"); break; case 2: printf(" 1 - Consulta por nome\n"); printf(" 2 - Consulta por telefone\n"); scanf("%d",&consultacliente); if ( consultacliente == 1){ consulta_nome(); } if ( consultacliente==2){ consulta_telefone(); } if ( consultacliente != 1 && consultacliente!= 2 ){ system("cls\n"); printf("codigo invalido\n"); system("pause"); } break; case 5: printf("1- Alterar valor \n"); printf("2- produto cadastrado\n"); printf("3- excluir cadastro\n"); scanf("%d",&produto); fflush(stdin); system("cls"); if(produto==1){ scanf("%f", &total); DBase[0].valor = total ; DBase[0].valor*1; printf("%.2f",DBase[0].valor); system("pause"); } else if (produto==2){ produtos_cadastros( ); produtos_cadastrados( ); scanf("%f", &total); DBase[0].valor = total ; system("pause"); system("cls"); } break; case 7: excluircliente (); break; } }while (opcao != 8); /*//Diferente de 8*/ return 0; } void cadastrop(int cod,int posR){ int cont; do { cliente[pos].telefone=cod; /*// NUMERO*/ printf("Telefone: %d\n",cliente[pos].telefone); /*// Faltou a posição*/ printf("Nome: "); gets(cliente[pos].nome); printf("Endereço:"); gets(cliente[pos].endereco ); printf("Quadra: "); gets(cliente[pos].quadra); printf("Lote: "); gets(cliente[pos].lote); printf("Complemento: "); gets(cliente[pos].complemento); printf("Setor: "); gets (cliente[pos].setor); printf("Cidade :"); gets(cliente[pos].cidade); cliente[pos].vazio = 1; /*//tinha r no lugar de z*/ cont== 1; pos++; }while (cont==1); return; } int verificar_pos(){ int cont = 0 ; while (cont <= 200){ if(cliente[cont].vazio == 0 ) return (cont); cont ++ ; } return (-1); } /*// Funções são colocadas fora de outras e não dentro.*/ int verifica_cod(int cod){ int cont ; for ( cont = 0 ; cont < 200 ; cont ++ ){ if (cliente[cont].telefone== cod){ return 0; } } return (1); } void consulta(){ int cont=0,telefone,posicao,retorno ; printf ("Digite o telefone: "); scanf("%d",&telefone); fflush(stdin); system("cls"); while (cont<= 200){ if (cliente[cont].telefone == telefone){ if (cliente[cont].vazio == 1){ printf("\nTelefone: ---- %d\nNome: -------- %s",cliente[cont].telefone,cliente[cont].nome ); printf("\nEndereço: ---- %s\nQuadra: ------ %s",cliente[cont].endereco,cliente[cont].quadra ); printf("\nLote: -------- %s\nComplemento: - %s",cliente[cont].lote ,cliente[cont].complemento); printf("\nSetor: ------- %s\nCidade: ------ %s",cliente[cont].setor ,cliente[cont].cidade ); system("pause"); break; } } cont ++ ; } if (cliente[cont].telefone != telefone){ retorno = verifica_cod(telefone); cadastrop(telefone,posicao); } } void consulta_nome(){ int cont=0,flag ; char nome[100] ; printf ("Digite o nome: "); scanf("%s",&nome); fflush(stdin); system("cls"); flag=0; while (cont<= pos){ if (strcmp(cliente[cont].nome,nome)== 0){ flag=1; printf("\nTelefone: ---- %d\nNome: -------- %s",cliente[cont].telefone,cliente[cont].nome ); printf("\nEndereço: ---- %s\nQuadra: ------ %s",cliente[cont].endereco,cliente[cont].quadra ); printf("\nLote: -------- %s\nComplemento: - %s",cliente[cont].lote ,cliente[cont].complemento); printf("\nSetor: ------- %s\nCidade: ------ %s",cliente[cont].setor ,cliente[cont].cidade ); break; } cont ++ ; } if(flag==0){ printf("Não existe cadastro com esse nome"); } printf("\n Tecle"); getch(); } void consulta_telefone(){ int cont=0 , telefone,flag; printf ("Digite o telefone: "); scanf("%d",&telefone); fflush(stdin); system("cls"); flag=0; while (cont<= pos){ if (cliente[cont].telefone == telefone){ if (cliente[cont].vazio == 1){ printf("\nTelefone: ---- %d\nNome: -------- %s",cliente[cont].telefone,cliente[cont].nome ); printf("\nEndereço: ---- %s\nQuadra: ------ %s",cliente[cont].endereco,cliente[cont].quadra ); printf("\nLote: -------- %s\nComplemento: - %s",cliente[cont].lote ,cliente[cont].complemento); printf("\nSetor: ------- %s\nCidade: ------ %s",cliente[cont].setor ,cliente[cont].cidade ); flag=1; break; } } cont ++ ; } if (flag==0){ printf("Não existe cadastro com esse telefone"); } printf("\n Tecle"); getch(); } int produtos_cadastros( ){ DBase[0].codigo = 1; DBase[0].descricao = *(struct descricao_stt *)"Liquigás"; DBase[0].valor = 60.00; DBase[0].quantidade= 0; DBase[1].codigo = 2; DBase[1].descricao = *(struct descricao_stt *)"Consigás"; DBase[1].valor = 58.00; DBase[1].quantidade= 0; DBase[2].codigo = 3; DBase[2].descricao = *(struct descricao_stt *)"Nacional Gás"; DBase[2].valor = 58.00; DBase[2].quantidade= 0; DBase[3].codigo = 4; DBase[3].descricao = *(struct descricao_stt *)"Gás Completo"; DBase[3].valor = 175.00; DBase[3].quantidade= 0; DBase[4].codigo = 5; DBase[4].descricao = *(struct descricao_stt *)"Água nina"; DBase[4].valor = 7.00; DBase[4].quantidade= 0; DBase[5].codigo = 6; DBase[5].descricao = *(struct descricao_stt *)"Água Gold"; DBase[5].valor = 7.00; DBase[5].quantidade= 0; DBase[6].codigo = 7; DBase[6].descricao = *(struct descricao_stt *)"Água Ypê"; DBase[6].valor = 8.00; DBase[6].quantidade= 0; DBase[7].codigo = 8; DBase[7].descricao = *(struct descricao_stt *)"Água Completa"; DBase[7].valor = 58.00; DBase[7].quantidade= 0; return( 0 ); } void produtos_cadastrados(){ int i; for( i = 0; i < SIZEDB; i++ ){ if( 0 != DBase[ i ].codigo ) printf( "ID: %d \t \t%s \t%.2f\n", DBase[ i ].codigo, &DBase[ i ].descricao, DBase[ i ].valor ); } return; } void excluircliente (){ int tel ,cont,j ; char resp ; system("cls"); printf("Digite o telefone "); scanf("%d",&tel); fflush(stdin); for ( cont =0 ; cont <= pos ;cont++){ if (cliente[cont].telefone == tel ){ if (cliente[cont].vazio == 1 ){ printf("\nTelefone: ---- %d\nNome: -------- %s",cliente[cont].telefone,cliente[cont].nome ); printf("\nEndereço: ---- %s\nQuadra: ------ %s",cliente[cont].endereco,cliente[cont].quadra ); printf("\nLote: -------- %s\nComplemento: - %s",cliente[cont].lote ,cliente[cont].complemento); printf("\nSetor: ------- %s\nCidade: ------ %s",cliente[cont].setor ,cliente[cont].cidade ); printf("\n Deseja exluir esse pedido? S/N "); scanf("%s",&resp); if (toupper(resp) == 'S'){/* passa para maiúscula */ for(j=cont;j<pos;j++){ cliente[j] = cliente[j+1]; } pos--; printf("\n Exclusão feita com sucesso \n "); system("pause"); } else if (toupper(resp) == 'N'){ printf("Exclusão cancelada ! \n "); system("pause"); } } } } } void posicao(){/*caracteres 7 x 7*/ int c=20,i,j,k,a; for(i=0;i<6;i++){ for(j=0;j<7;j++){ a=letras[i][j];/* bits ao contrário 0 1 2 3 4 5 6 */ for(k=0;k<7;k++){ if(a % 2 == 1){ tela[j][k+c]=1; } a/=2; } } c+=8; } } void mosta_letra(){ int i,j; for(i=0;i<7;i++) for(j=0;j<80;j++) if(tela[i][j]==1) printf("#"); else printf(" "); }

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×