Ir para conteúdo
Fórum Script Brasil

viciado

Membros
  • Total de itens

    172
  • Registro em

  • Última visita

Tudo que viciado postou

  1. viciado

    Livros

    Estou afim de começar a aprender programação de jogos. Quais livros vocês aconselham para aprender desde o básico até nivel mais avançado ? Existe alguns links bons sobre o assunto ?
  2. viciado

    String

    Como duplicar cada caractere de uma string Entrada: programar é bom Saída: pprrooggrraammaarr éé bboomm
  3. viciado

    Struct

    Obrigado. Meu dev enlouqueceu não compila mais nada vou usar linux mesmo
  4. viciado

    Biblioteca

    Consegui, obrigado é bem fácil e útil
  5. viciado

    Struct

    Não mostra erro em alguma linha, a mensagem é: undefined reference to `__cpu_features_init' #include <stdio.h> #include <stdlib.h> #define MAX 5 struct papelaria { int codigo; char descricao[50]; float valor; int quant; }dados[MAX]; void alterar(); int main() { int i; char tecla = 's'; for(i=0;i<MAX;i++){ printf("Digite o codigo: \n"); scanf("%d",&dados[i].codigo); printf("Digite a descricao: \n"); fgets(dados[i].descricao, 50, stdin); printf("Digite o valor unitario: \n"); scanf("%f",&dados[i].valor); printf("Digite a quantidade em estoque: \n"); scanf("%d",&dados[i].quant); } printf("Deseja alterar ?\n (s) sim (n) não"); tecla = getch(); if(tecla == 's'){ alterar(); } system("PAUSE"); return 0; } void alterar(){ int cod, i; char descricao[50]; float valor; int quant; printf("Digite nova descricao \n"); fgets(descricao, 50, stdin); printf("Digite novo valor: \n"); scanf("%f",&valor); printf("Digite nova quantidade: \n"); scanf("%d",&quant); printf("Alterar dados \n"); printf("Informa o codigo do produto a ser alterado \n"); scanf("%d",&cod); for(i=0;i<MAX;i++){ if(cod == dados[i].codigo){ strcpy(dados[i].descricao,descricao); dados[i].valor = valor; dados[i].quant = quant; } else{ printf("Codigo errado \n"); } } }
  6. viciado

    Struct

    Erro na linha 51: "incompatible types in assignment" #include <stdio.h> #include <stdlib.h> #define MAX 5 struct papelaria { int codigo; char descricao[50]; float valor; int quant; }dados[MAX]; void alterar(); int main() { int i; char tecla = 's'; for(i=0;i<MAX;i++){ printf("Digite o codigo: \n"); scanf("%d",&dados[i].codigo); printf("Digite a descricao: \n"); fgets(dados[i].descricao, 50, stdin); printf("Digite o valor unitario: \n"); scanf("%f",&dados[i].valor); printf("Digite a quantidade em estoque: \n"); scanf("%d",&dados[i].quant); } printf("Deseja alterar ?\n (s) sim (n) não"); tecla = getch(); if(tecla == 's'){ alterar(); } system("PAUSE"); return 0; } void alterar(){ int cod, i; char descricao[50]; float valor; int quant; printf("Digite nova descricao \n"); fgets(descricao, 50, stdin); printf("Digite novo valor: \n"); scanf("%f",&valor); printf("Digite nova quantidade: \n"); scanf("%d",&quant); printf("Alterar dados \n"); printf("Informa o codigo do produto a ser alterado \n"); scanf("%d",&cod); for(i=0;i<MAX;i++){ if(cod == dados[i].codigo){ dados[i].descricao = descricao; dados[i].valor = valor; dados[i].quant = quant; } else{ printf("Codigo errado \n"); } } }
  7. viciado

    Biblioteca

    Por exemplo como posso criar uma biblioteca com essas funções ? #include <stdio.h> #include <stdlib.h> int par(int m[3][4]){ int count = 0; int i,j; for(i=0;i<3;i++) for(j=0;j<4;j++){ if(m[i][j] % 2 == 0){ count++; } } return (count); } int impar(int m[3][4]){ int i,j; int soma = 0; for(i=0;i<3;i++) for(j=0;j<4;j++){ if(m[i][j] % 2 != 0){ soma = soma + m[i][j]; } } return(soma); } float media(int m[3][4]){ int i,j; float soma = 0; for(i=0;i<3;i++) for(j=0;j<4;j++){ soma = soma + m[i][j]; } float media = soma / 12; return (media); } int main() { int m[3][4]; int i,j; for(i=0;i<3;i++) for(j=0;j<4;j++){ printf("Preenche a matriz M[%d][%d] \n",i,j); scanf("%d",&m[i][j]); } printf("A quantidade de numeros par e: %d \n",par(m)); printf("A soma dos numeros impar e: %d \n",impar(m)); printf("A media de todos os numeros e: %f \n",media(m)); system("PAUSE"); return 0; }
  8. viciado

    Struct e Arquivo

    Crie um programa que faça o cadastramento de contas, verificando se o numero do cliente da conta foi previamente cadastrado. Se existir, deverá permitir a inclusão. Casa contrario, devera abrir uma tela que permita o cadastramento. O programa devera ter uma função para exibir os dados cadastrados. E salvar os dados em um arquivo .txt Erro na linha 47: 'count' undeclared #include <stdio.h> #include <stdlib.h> #define MAX 10 struct cliente { int num_cliente; char nome[30]; int tel; char endereco[50]; }cliente[MAX]; struct conta { int num_conta; float saldo; }conta[MAX]; int verifica(int num); int sair_salvar(int count, int contador); void exibir(); void incluir(); void cadastrar(); int main() { int op; while(op != 4){ printf("(1) Cadastrar cliente \n"); printf("(2) Incluir saldo \n"); printf("(3) Ver contas \n"); printf("(4) Sair \n"); scanf("%d",&op); switch(op){ case 1: cadastrar(); break; case 2: incluir(); break; case 3: exibir(); case 4: sair_salvar(count, contador); break; } } system("PAUSE"); return 0; } void cadastrar(){ char tecla = 's'; int i; int count = 0; for(i=0;i<MAX;i++){ printf("Digite o codigo \n"); scanf("%d",&cliente[i].num_cliente); if(verifica(cliente[i].num_cliente)){ printf("Cliente já cadastrado \n"); incluir(); } else{ printf("Digite o nome \n"); scanf("%s",&cliente[i].nome); printf("Digite o telefone \n"); scanf("%d",&cliente[i].tel); printf("Digite o endereco \n"); scanf("%s",&cliente[i].endereco); } count++; printf("Digite enter para cadastrar outro cliente ou s para sair \n"); tecla = getch(); if(tecla == 's') break; } } void incluir(){ int cod; printf("Digite o codigo \n"); scanf("%d",&cod); int i, contador = 0; for(i=0;i<MAX;i++){ if(!verifiva(cod)){ printf("Digite o numero da conta \n"); scanf("%d",&conta[i].num_conta); printf("Digite seu saldo \n"); scanf("%f",&conta[i].saldo); contador++; } else{ printf("Codigo errado \n"); } } } void exibir(){ int cod; int i; printf("Digite o codigo \n"); scanf("%d",&cod); if(verifica(cod)){ printf("Codigo errado \n"); } else{ for(i=0;i<MAX;i++){ if(cod == cliente[i].num_cliente){ printf("Nome: %s \n",cliente[i].nome); printf("Telefone: %d \n",cliente[i].tel); printf("Endereco: %s \n",cliente[i].endereco); } } } } int sair_salvar(int count, int contador){ FILE *fp; fp = fopen("arquivo.txt","w+"); int i; for(i=0;i<count;i++){ fprintf(fp,"\n\n DADOS DO CLIENTE \n\n"); fprintf(fp,"Codigo: %d \n",cliente[i].num_cliente); fprintf(fp,"Nome: %s \n",cliente[i].nome); fprintf(fp,"Telefone %d \n",cliente[i].tel); fprintf(fp,"Endereco: %s \n",cliente[i].endereco); } for(i=0;i<contador;i++){ fprintf(fp,"\n\n DADOS DA CONTA \n\n"); fprintf(fp,"Numero da conta: %d \n",conta[i].num_conta); fprintf(fp,"Saldo: %f \n",conta[i].saldo); } exit(0); } int verifica(int num){ int i; for(i=0;i<MAX;i++){ if(num == cliente[i].num_cliente){ return 0; } else { return 1; } } }
  9. viciado

    Biblioteca

    Como eu posso compilar no gcc do linux ?
  10. viciado

    Ajuda com struct

    Qual o (os) problemas desse codigo que não compila #include <stdio.h> #include <stdlib.h> struct estados { char nome[30]; int num_veiculos; int num_acidentes; }dados[15]; void indice(); void percentual(); void media(); int main() { int i; for(i=0;i<15;i++){ printf("Informe o nome do estado \n"); scanf("%s",&dados[i].nome); printf("Informe o numero de veiculos \n"); scanf("%d",&dados[i].num_veiculos); printf("Informe o numero de acidentes \n"); scanf("%d",&dados[i].num_acidentes); } indice(); percentual(); media(); system("PAUSE"); return 0; } void indice(){ char nome1[30], nome2[30]; int maior = dados[0].num_acidentes; int menor = dados[0].num_acidentes; int i; for(i=0;i<15;i++){ if(dados[i].num_acidentes > maior){ maior = dados[i].num_acidentes; nome1 = dados[i].nome; } } printf("O estado com mais acidentes e: \n %s com %d acidentes \n",nome1, maior); for(i=0;i<15;i++){ if(dados[i].num_acidente < menor){ menor = dados[i].num_acidentes; nome2 = dados[i].nome; } } printf("O estado com mais acidentes e: \n %s com %d acidentes \n",nome2, menor); } void percentual(){ int i float total = 0; for(i=0;i<15;i+){ total = total + dados[i].num_veiculos; } for(i=0;i<15;i++){ printf("%s \n",dados[i].nome); float perc = (dados[i].num_veiculos * 100) / total; printf("%f % veiculos \n",perc); } } void media(){ int i; float total = 0; for(i=0;i<15;i++){ total = total + dados[i].acidentes; } for(i=0;i<15;i++){ printf("%s \n",dados[i].nome); float media = (dados[i].acidentes * 100) / total; printf("%f media de acidentes \n"); } }
  11. viciado

    Biblioteca

    Como criar e compilar biblioteca em c ? Tenho um programa com varias funções como criar biblioteca e compilar ?
  12. viciado

    Arquivo passo a passo

    Consegui fazer a função para cadastrar, como posso fazer a função de editar dados ? #include <stdio.h> #include <stdlib.h> #include <string.h> void cadastrar(FILE *arquivo); typedef struct{ char nome[30]; int num_cliente, num_conta; float saldo; char tel[11]; char endereco[30]; }dados; int main() { int op; FILE *arquivo; while(op != 4){ printf("(1) Cadastrar \n"); printf("(2) Editar dados \n"); printf("(3) Ver \n"); printf("(4) Sair \n"); printf("Digite uma opcao "); scanf("%d",&op); switch(op){ case 1: cadastrar(arquivo); break; case 2: break; case 3: break; case 4: exit(0); break; } } system("PAUSE"); return 0; } void cadastrar(FILE *arquivo){ dados cliente; int i; getchar(); arquivo = fopen("arquivo.txt","w+"); printf("Digite o nome \n"); scanf("%s", cliente.nome); printf("Digite o codigo \n"); scanf("%d",&cliente.num_cliente); printf("Digite o telefone \n"); scanf("%s",&cliente.tel); printf("Digite o endereco \n"); scanf("%s",cliente.endereco); fprintf(arquivo, "%s \n", cliente.nome); fprintf(arquivo, "%d \n", cliente.num_cliente); fprintf(arquivo, "%s \n", cliente.tel); fprintf(arquivo, "%s \n", cliente.endereco); fclose(arquivo); }
  13. viciado

    Testando arquivo

    Por que o programa trava no final e tenho que finalizar a tarefa ? #include <stdio.h> #include <stdlib.h> #define MAX 3 struct papelaria { int id; char descricao[50]; float valor; int quant; }dados[MAX]; int main() { FILE *fp; char nome[30], local[30]; printf("Digite o nome do arquivo \n"); fgets(nome, 30, stdin); strcpy(local,"c:\\pasta\\"); strcat(local,nome); strcat(local,".txt"); fp = fopen(local,"w"); int i; for(i=0;i<MAX;i++){ printf("Informe o codigo \n"); scanf("%d",&dados[i].id); printf("Digite a descricao do produto \n"); scanf("%s",&dados[i].descricao); printf("Informe o valor unitario \n"); scanf("%f",&dados[i].valor); printf("Informe a quantidade em estoque \n"); scanf("%d",&dados[i].quant); } for(i=0;i<MAX;i++){ fprintf(fp,"%d\n",dados[i].id); fprintf(fp,"%s\n",dados[i].descricao); fprintf(fp,"%f\n",dados[i].valor); fprintf(fp,"%d\n",dados[i].quant); } fclose(fp); printf("\nArquivo salvo \n"); system("PAUSE"); return 0; }
  14. CLIENTE => número do cliente, nome, telefone, endereço CONTA BANCÁRIA => número da conta, número do cliente, saldo Crie um programa que faça o cadastramento de contas, verificando se o número do cliente titular da conta já foi previamente cadastrado. Se existir, deverá permitir a inclusão. Caso contrário, deverá mostrar a mensagem CLIENTE NÃO CADASTRADO e abrir uma tela que permita o cadastramento. O programa deverá mostrar, ao final, todas as contas cadastradas. Estou tendo problemas nos fprintf "subscripted value is neither array nor pointer" #include <stdio.h> #include <stdlib.h> #include <string.h> void cadastrar(FILE *arquivo); typedef struct registro{ char nome[30]; int num_cliente, num_conta; float tel, saldo; char endereco[30]; }dados; int main() { int op; FILE *arquivo; while(op != 4){ printf("(1) Cadastrar \n"); printf("(2) Editar dados \n"); printf("(3) Ver \n"); printf("(4) Sair \n"); printf("Digite uma opcao "); scanf("%d",&op); switch(op){ case 1: cadastrar(arquivo); break; case 2: break; case 3: break; case 4: exit(0); break; } fclose(arquivo); } system("PAUSE"); return 0; } void cadastrar(FILE *arquivo){ dados cliente; char local[30], nome[30]; int i; printf("Digite o nome do arquivo \n"); fgets(nome, 30, stdin); strcpy(local,"c:\\pasta\\"); strcat(local,nome); strcat(local,".txt"); if((arquivo = fopen("arquivo.txt","w")) == NULL){ printf("Erro ao abrir o arquivo\n"); exit(0); } else{ printf("Digite o nome \n"); scanf("%s",cliente.nome); printf("Digite o codigo \n"); scanf("%d",&cliente.num_cliente); printf("Digite o telefone \n"); scanf("%f",&cliente.tel); printf("Digite o endereco \n"); scanf("%s",cliente.endereco); for(i=0;i<30;i++){ fprintf(arquivo, "%s \n", cliente[i].nome); fprintf(arquivo, "%d \n", cliente[i].num_cliente); fprintf(arquivo, "%f \n", cliente[i].tel); fprintf(arquivo, "%s \n", cliente[i].endereco); } } fclose(arquivo); }
  15. viciado

    Permutação

    Como posso verificar se uma string é permutação da outra. Se todos os caracteres da primeira cadeia estão presentes na segunda. Ex "abccde" é permutação de "cbadce", mas não é de "abcdef" nem de "abcde" Erro não compila #include <stdio.h> #include <stdlib.h> int main() { char palavra1[30]; char palavra2[30]; printf("Digite uma palavra\n"); gets(palavra1); printf("Digite outra palavra \n"); gets(palavra2); int i,j; int tam1 = strlen(palavra1); int tam2 = strlen(palavra2); if(tam1 > tam2){ printf("A primeira não e permutacao da segunda \n"); } else{ for(i=0;i<tam1;i++) { if(palavra1[i] == for(j=0;j<tam2;j++){ palavra2[j]; } ) { printf("E permutacao \n"); } else{ printf("não e permutacao \n"); } }) } system("PAUSE"); return 0; }
  16. viciado

    Struct

    Faça um programa contendo os serviços que uma oficina mecanica pode realizar: ordem de serviço (numero da OS, data, valor, serviço realizado, cliente). Leia as informações sobre várias ordens de serviço e determine, ao final, a média dos valores, o nome do cliente que realizou o serviço mais caro, juntamente com a descrição desse serviço e a data de sua realização. Erro nas linhas: 54,55 e 56 "Incompatiple types in assignment" #include <stdio.h> #include <stdlib.h> #define MAX 30 void nome_media(); void cliente_caro(); struct oficina { int os; char data[15]; float valor; char servico[50]; char cliente[30]; }dados[MAX]; int main() { int i; for(i=0;i<MAX;i++){ printf("Nome \n"); scanf("%s",dados[i].cliente); printf("Numero da OS \n"); scanf("%d",&dados[i].os); printf("Data \n"); scanf("%s",dados[i].data); printf("Valor \n"); scanf("%f",&dados[i].valor); printf("Servico \n"); scanf("%s",dados[i].servico); } nome_media(); cliente_caro(); system("PAUSE"); return 0; } void nome_media(){ int i; float soma = 0, media; for(i=0;i<MAX;i++){ printf("%s \n",dados[i].cliente); soma = soma + dados[i].valor; media = media / (float) MAX; printf("A media: %f \n",media); } } void cliente_caro(){ int i; float maior = dados[0].valor; char nome[30]; char servico[50]; char data[15]; for(i=0;i<MAX;i++){ if(dados[i].valor > maior){ maior = dados[i].valor; nome = dados[i].cliente; servico = dados[i].servico; data = dados[i].data; } } printf("Cliente %s gastou: %f realizando o servico %s na data: %s\n",nome, maior, servico, data); }
  17. viciado

    string

    Obrigado. Resolvido
  18. viciado

    Numero primo

    Eu entendo que numero primo é: for(i=0;i<10;i++){ if(n % i == 0){ É PRIMO Agora não entendi como faço os 10 primeiros acima de 100
  19. viciado

    string

    Continua retornando sempre 0 #include <stdio.h> #include <stdlib.h> #include <string.h> int verifica(char str1[30], char str2 [30]); int main() { char str1[30]; char str2[30]; printf("Digite uma string \n"); fgets(str1, 30, stdin); printf("Digite outra string \n"); fgets(str2, 30, stdin); printf("\n %d \n",verifica(str1,str2)); system("PAUSE"); return 0; } int verifica(char str1[30], char str2 [30]){ int i; if(strcmp(str1,str2)){ return(0); } else{ for(i=0;i<30;i++){ if(str1[i] != str2[i]){ return (i); } } } }
  20. viciado

    Vetor intersecção

    A saída que eu obtenho é: 2293512 #include <stdio.h> #include <stdlib.h> int main(void) { int x[10], y[10]; int i; for(i=0;i<10;i++){ printf("Preenche o vetor X[%d] \n",i); scanf("%d",&x[i]); } for(i=0;i<10;i++){ printf("Preenche o vetor Y[%d] \n",i); scanf("%d",&y[i]); } int n; for(i=0;i<10;i++){ if(x[i] == y[i]){ n = x[i]; } } printf("A interseccao e: \n %d \n",&n); system("PAUSE"); return 0; }
  21. viciado

    Numero primo

    Uma função que mostre os dez primeiros numeros primos acima de 100. Alguém tem uma idéia ?
  22. viciado

    string

    Tentei assim mais está retornando sempre 0 #include <stdio.h> #include <stdlib.h> #include <string.h> int verifica(char str1[30], char str2 [30]); int main() { char str1[30]; char str2[30]; printf("Digite uma string \n"); fgets(str1, 30, stdin); printf("Digite outra string \n"); fgets(str2, 30, stdin); printf("\n %d \n",verifica(str1,str2)); system("PAUSE"); return 0; } int verifica(char str1[30], char str2 [30]){ int i; if(strcmp(str1,str2)){ return(0); } else{ for(i=0;i<30;i++){ if(!strncmp(str1[i], str2[i], 30)){ return (i); } } } }
  23. viciado

    Vetor

    Preencher um vetor de 30 elementos e retornar o vetor A elementos maiores que 0 e o vetor B elementos menores e iguais a 0 A saída que eu tenho é sempre: 2293280 varias vezes #include <stdio.h> #include <stdlib.h> int vetor_a(int x[30]); int vetor_b(int x[30]); int main() { int x[30]; int i; for(i=0;i<30;i++){ printf("Preenche o vetor X[%d] \n",i); scanf("%d",&x[i]); } printf("O vetor A \n"); for(i=0;i<30;i++){ printf("%3d \n",vetor_a(x)); } printf("O vetor B \n"); for(i=0;i<30;i++){ printf("%3d \n",vetor_b(x)); } system("PAUSE"); return 0; } int vetor_a(int x[30]){ int a[30]; int i; for(i=0;i<30;i++){ if(x[i] > 0){ a[i] = x[i]; } } return(a); } int vetor_b(int x[30]){ int b[30]; int i; for(i=0;i<30;i++){ if(x[i] <= 0){ b[i] = x[i]; } } return(b); }
  24. viciado

    Arquivo C

    A função de cadastro que eu fiz está correta ? Alguma idéia para fazer as outras duas funções ? #include <stdio.h> #include <stdlib.h> #include <string.h> void cadastrar(FILE *arquivo); typedef struct registro{ char nome[30]; int num_cliente, num_conta; float tel, saldo; char endereco[30]; }dados; int main() { int op; FILE *arquivo; while(op != 4){ printf("(1) Cadastrar \n"); printf("(2) Editar dados \n"); printf("(3) Ver \n"); printf("(4) Sair \n"); printf("Digite uma opcao "); scanf("%d",&op); switch(op){ case 1: cadastrar(arquivo); break; case 2: break; case 3: break; case 4: exit(0); break; } fclose(arquivo); } system("PAUSE"); return 0; } void cadastrar(FILE *arquivo){ dados cliente; if((arquivo = fopen("arquivo.txt","wt")) == NULL){ printf("Erro ao abrir o arquivo\n"); exit(0); } else{ printf("Digite o nome \n"); scanf("%s",cliente.nome); printf("Digite o codigo \n"); scanf("%d",&cliente.num_cliente); printf("Digite o telefone \n"); scanf("%f",&cliente.tel); printf("Digite o endereco \n"); scanf("%s",cliente.endereco); fprintf(arquivo, "%s \n", cliente.nome); fprintf(arquivo, "%d \n", cliente.num_cliente); fprintf(arquivo, "%f \n", cliente.tel); fprintf(arquivo, "%s \n", cliente.endereco); } fclose(arquivo); }
×
×
  • Criar Novo...