Ir ao conteúdo
  • Cadastre-se

Helio Junnior Sartor Dalmolin

Membro Pleno
  • Posts

    20
  • Cadastrado em

  • Última visita

Tudo que Helio Junnior Sartor Dalmolin postou

  1. @devair1010 Tentei fazer da maneira como você explicou, porém não consegui. poderia me dizer o que eu fiz de errado? #include<stdio.h> #include<conio.h> int main (void ){ int m1[3][3], m2[3][3],m3[3][3]={0}, i,j,k; printf ("\nDigite valor para os elementos da matriz 1\n\n"); for ( i=0; i<3; i++ ){ for ( j=0; j<3; j++ ){ printf ("\nElemento[%d][%d] = ", i, j); scanf ("%d", & m1[ i ][ j ]); } } printf("matriz 1:\n"); for(i=0;i<3; i++){ printf("| "); for(j=0;j<3;j++){ printf(" %d ", m1[ i ][ j ]); } printf(" |\n"); } printf ("\nDigite valor para os elementos da matriz 2\n\n"); for ( i=0; i<3; i++ ){ for ( j=0; j<3; j++ ){ printf ("\nElemento[%d][%d] = ", i, j); scanf ("%d", & m2[ i ][ j ]); } } printf("matriz 2:\n"); for(i=0;i<3; i++){ printf("| "); for(j=0;j<3;j++){ printf(" %d ", m2[ i ][ j ]); } printf(" |\n"); } if( m1[ i ][ j ]>m2[ i ][ j ]){ for(i=0;i<3; i++){ for(j=0;j<3;j++){ for(k=0;k<3;k++){ m3[i][j]+=m1[i][k]; } } } } if(m2[ i ][ j ]> m1[ i ][ j ]){ for(i=0;i<3; i++){ for(j=0;j<3;j++){ for(k=0;k<3;k++){ m3[i][j]+=m2[k][j]; } } } } printf("matriz 3:\n"); for(i=0;i<3; i++){ printf("| "); for(j=0;j<3;j++){ printf(" %d ", m3[ i ][ j ]); } printf(" |\n"); } }
  2. Escrever um programa que leia duas matrizes 3x3 e escreva uma terceira, matriz também 3x3, com os maiores elementos entre a respectivas posições das duas primeiras matrizes. Imprima as três matrizes na tela. Não consegui gerar a terceira matriz, como posso fazer isso? #include<stdio.h> #include<conio.h> int main (void ){ int m1[3][3], m2[3][3],m3[3][3]={0}, i,j; printf ("\nDigite valor para os elementos da matriz 1\n\n"); for ( i=0; i<3; i++ ){ for ( j=0; j<3; j++ ){ printf ("\nElemento[%d][%d] = ", i, j); scanf ("%d", & m1[ i ][ j ]); } } printf("matriz 1:\n"); for(i=0;i<3; i++){ printf("| "); for(j=0;j<3;j++){ printf(" %d ", m1[ i ][ j ]); } printf(" |\n"); } printf ("\nDigite valor para os elementos da matriz 2\n\n"); for ( i=0; i<3; i++ ){ for ( j=0; j<3; j++ ){ printf ("\nElemento[%d][%d] = ", i, j); scanf ("%d", & m2[ i ][ j ]); } } printf("matriz 2:\n"); for(i=0;i<3; i++){ printf("| "); for(j=0;j<3;j++){ printf(" %d ", m2[ i ][ j ]); } printf(" |\n"); }
  3. Vi agora meu código não esta funcionando mesmo. informações Aluno[5]; float media [5]; int i,k,t,j=0; for(i=0;i<5;i++){ printf("Insira o nome do aluno:"); scanf("%[^\n]", Aluno[i].nome); printf("\n Insira a idade do aluno:"); scanf("%d", &Aluno[i].idade); printf("\n Insira a turma do aluno:"); scanf("%f", &Aluno[i].turma); for(k=0;k<4;k++){ j++; printf("\n Insira a nota %d:", j); scanf("%f", &Aluno[i].notas[k]); } } } fiz ele assim e deu erro nos for ai fica assim quando executo: Como posso arrumar isso?
  4. Leia o cadastro de 5 alunos que contenha as informações: nome, idade, turma, valor de quatro notas (utilize um vetor para armazenar as notas) e a média do aluno (média baseada no valor das quatro notas. a. Defina um registro/struct para armazenar as informações sobre o aluno. b. Obtenha as informações sobre os alunos através de entradas fornecidas pelo usuário. c. Calcule a média de cada um aluno com base no vetor com as quatro notas. d. Escreva os dados dos alunos “aprovados” (média >= 7.0). e. Escreva os dados dos alunos em “exame” (3.0 <= média < 7.0). f. Escreva os dados dos alunos “reprovados” (média < 3.0). Como faço para calcular essa media(No meu código)? #include<stdio.h> typedef struct aluno{ char nome[30]; char idade[3]; char turma[10]; int notas[4]; }informações; main(){ informações Aluno[5]; float media [5]; int i,k,t,j=0; for(i=0;i<5;i++){ printf("Insira o nome do aluno:"); scanf("%[^\n]", Aluno[i].nome); printf("\n Insira a idade do aluno:"); scanf("%d", &Aluno[i].idade); printf("\n Insira a turma do aluno:"); scanf("%f", &Aluno[i].turma); for(k=0;k<4;k++){ j++; printf("\n Insira a nota %d:", j); scanf("%f", &Aluno[i].notas[k]); setbuf(stdin, NULL); getchar(); } setbuf(stdin, NULL); getchar(); } }
  5. @devair1010 Mudei do jeito como entendi, agora ele esta calculando, porém aparece a media como 0 dos cinco atletas. o que estou errando ainda? #include<stdio.h> #include<stdlib.h> struct jogador{ char nome [50]; char idade [3]; int njogos [50]; int ngols [6]; }atleta[5]; main(){ int i; float media; for(i=0;i<5;i++){ printf("Digite o nome do jogador: \n"); scanf("%s", &atleta[i].nome); printf("Digite a idade do jogador: \n"); scanf("%s", &atleta[i].idade); printf("Digite o numero de jogos do jogador: \n"); scanf("%d", &atleta[i].njogos[i]); printf("Digite o numero de gols do jogador: \n"); scanf("%d", &atleta[i].ngols[i]); } printf("Numeros de gols de cada jogador: \n"); for(i=0;i<5;i++){ media=(atleta[i].ngols[i])/(atleta[i].njogos[i]); printf("%s:",atleta[i].nome); printf("%f gol(s).\n",media); } }
  6. Crie um registro para armazenar informações de um jogador de futebol contendo: nome; idade; número de jogos; número de gols. Escreva um programa que obtenha os dados para jogadores titulares de um time de futsal (5 jogadores; utilize um vetor de registros). Por fim imprima o nome e a média de gols de cada jogador. Eu não consegui fazer a media, alguém poderia me mostrar como é? #include<stdio.h> #include<stdlib.h> struct jogador{ char nome [50]; char idade [3]; int njogos [50]; int ngols [6]; }atleta[5]; main(){ int i; float media; for(i=0;i<5;i++){ printf("Digite o nome do jogador: \n"); scanf("%s", &atleta[i].nome); printf("Digite a idade do jogador: \n"); scanf("%s", &atleta[i].idade); printf("Digite o numero de jogos do jogador: \n"); scanf("%d", &atleta[i].njogos); printf("Digite o numero de gols do jogador: \n"); scanf("%d", &atleta[i].ngols); } printf("Numeros de gols de cada jogador: \n"); for(i=0;i<5;i++){ media=(atleta[i].ngols)/(atleta[i].njogos); printf("%s:",atleta[i].nome); printf("%f gol(s).\n",media); } }
  7. Leia um cadastro com 10 automóveis que contenha: modelo, ano, nome do dono, potência e IPVA (se está pago ou não). Por fim, gere um relatório informando quantos automóveis tem motores com potência superior a 100cv. Meu contador (cont) está contando todos os veículos, como posso fazer para arrumar? #include<stdio.h> struct automovel{ char modelo [50]; char ano [5]; char proprietario [50]; int potencia [6]; char IPVA [12]; } main(){ struct automovel cadastro; int i, cont=0; for(i=0; i<10; i++){ printf("Digite o modelo do carro: \n"); scanf("%s",cadastro.modelo); printf("Digite o ano do carro: \n"); scanf("%s",cadastro.ano); printf("Digite o nome do dono do carro: \n"); scanf("%s",cadastro.proprietario); printf("Digite a potencia do carro (em cv): \n"); scanf("%d",cadastro.potencia); printf("O IPVA do carro esta pago? \n"); scanf("%s",cadastro.IPVA); if(cadastro.potencia>100){ cont++; } } printf("A quantidade de automoveis que tem motores com potencia superior a 100cv eh de:%d",cont); }
  8. Escreva um programa para ler 10 palavras (considere que cada palavra possui no máximo 30 caracteres). Contar e escrever a frequência de cada caractere presente em cada palavra. quando aparece uma string ex (sartor) ele só conta um R, mas quando é ex (junnior) ele conta certo. alguém pode me ajudar? #include <stdio.h> main(){ char str[30]; int i, j,k, count = 0, aux = 0, c = 1; for(k=0; k<10;k++){ puts("\nInforme uma palavra:"); gets(str); while (str[count] != '\0'){ count++; } for(i = 0; i < count; i++){ aux = 1; for(j = i + 1; j < count; j++){ if(str[i] == str[j]){ aux++; } else break; } if(i == 0) c = 1; else{ for(j = i - 1; j >= 0; j--){ if(str[i] != str[j]) c = 1; else{ c = 0; break; } } } if(c == 1){ printf("\n%c : %d", str[i], aux); } } } }
  9. Escreva um programa para ler uma quantidade indeterminada de dupla de dados. O primeiro elemento da dupla é um dos seguintes caracteres: 'M','m', 'F' ou 'f' (não é necessário validar). O segundo é uma palavra de até 30 caracteres (considere que ela pode conter hífen). Converta cada palavra lida para maiúscula ou minúscula conforme o primeiro caractere (da dupla) informado seja 'M' (Maiúscula) ou 'm' (Minúscula). Imprimir cada palavra após a conversão. O programa termina quando o primeiro caractere informado (da dupla) for 'F' ou 'f'. Poderiam me dizer o que estou fazendo de errado no código abaixo? quando eu coloco M ou m ele volta pra primeira opção. #include <stdio.h> #include <string.h> main(){ char pal[30], aux[1]; for( ; ; ){ printf("Digite M para transformar palavras em maiusculo, m para transformar palavras em minusculo e F ou f para encerrar o programa: \n"); scanf("%s", &aux[1]); if (aux[1]== 'F'||aux[1]== 'f'){ break; } else if(aux[1]== 'M'){ printf("Digite uma palavra (de ate 30 caracteres): \n"); fgets(pal,30,stdin); strupr(pal); printf("%s \n", pal); }else if(aux[1]== 'm'){ printf("Digite uma palavra (de ate 30 caracteres): \n"); fgets(pal,30,stdin); strlwr(pal); printf("%s \n", pal); } } }
  10. @.if #include <stdio.h> #include <string.h> #include <ctype.h> int main() { char frase[71]; int i; for(i=0;i<5;i++){ printf("Digite seus dois primeiros nomes: "); scanf("%[^\n]", frase); strlwr(frase); for (i = 0; i <strlen(frase) + 1; i++) { if (i == 0 || frase[i - 1] == ' ') frase[i] = toupper(frase[i]); else frase[i] = frase[i]; } printf("Nome: %s\n", frase); } return 0; } arrumei ali a parte que você falou porém não repetiu as 5 vezes
  11. Escreva um programa para ler 5 nomes (e sobrenomes) de pessoas (considere que cada nome possui no máximo 70 letras e contém apenas letras minúsculas). Converter apenas a inicial de cada nome para maiúscula. Imprimir cada nome após a conversão. #include <stdio.h> #include <string.h> #include <ctype.h> int main() { char frase[71]; int i; for(i=0;i<5;i++){ printf("Digite seus dois primeiros nomes: "); scanf("%[^\n]", frase); strlwr(frase); for (i = 0; i < ; i++) { if (i == 0 || frase[i - 1] == ' ') frase[i] = toupper(frase[i]); else frase[i] = frase[i]; } printf("Nome: %s\n", frase); } return 0; } Eu coloquei esse ''for(i=0;i<5;i++)'' para poder colocar os 5 nomes que pede ali, porém só repete uma vez. o que estou fazendo de errado?
  12. Escreva um programa para ler uma quantidade indeterminada de frases (considere que cada frase possui no máximo 70 caracteres). Para cada frase imprima a quantidade de espaços em branco que ela contém. O programa se encerra quando for digitada uma frase que não contém espaços em branco. Minha duvida em relação a questão acima é como fazer para contar os espaços e como sair do loop infinito quando for digitada uma frase que não contém espaços em branco. Segue o começo do meu código: #include<stdio.h> #include <string.h> #include <conio.h> int main () { char pal[70]; int i, qtd=0; printf ("Digite algumas frases:\n"); for( ; ; ){ fgets(pal,70,stdin); } }
  13. preciso escrever um código que lê uma palavra e em seguida escreve apenas a primeira e a ultima letra. Não estou conseguindo fazer a saída do meu código, alguém poderia me mostrar como é? #include<stdio.h> #include <string.h> #include <conio.h> int main () { char pal[30]; int i, qtd=0; printf ("Digite 10 palavras:\n"); for ( i=0; i<10; i++ ){ fgets(pal,30,stdin); qtd = strlen(pal); printf("\nPrimeira letra: %c", pal[0]); printf("\nUltima letra: %c", pal[qtd-i]); } } #include<stdio.h> #include <string.h> #include <conio.h> int main () { char pal[30]; int i, qtd=0; printf ("Digite 10 palavras:\n"); for ( i=0; i<10; i++ ){ fgets(pal,30,stdin); qtd = strlen(pal); printf("\nPrimeira letra: %c", pal[0]); printf("\nUltima letra: %c", pal[qtd-i]); } }
  14. Estou fazendo um exercício em c, no qual pede para digitar 10 palavras de no máximo 30 caracteres e ao final pede para dar o total de caracteres digitados. porém meu contadores esta errado. poderiam me mostrar como é? #include<stdio.h> #include <string.h> int main (){ char pal[30]; int i,j, contador=0; printf ("Digite 10 palavras:\n"); for ( i=0; i<10; i++ ){ fgets(pal,30,stdin); } printf("a quantidade de caracteres eh:%d",strlen(pal) ); }
  15. Ler um vetor de até 20 elementos. A leitura deverá ser executada até que o vetor fique totalmente preenchido ou seja informado um valor negativo ou zero. Ler 2 valores que representam 2 posições (índices) no vetor (aceitar apenas índices válidos), escrever os valores nas posições entre estes índices (inclusive). Poderiam me dizer o que estou errando no while? #include<stdio.h> int main() { int vet[20], soma, i, pos,var_1, var_2; printf("Digite os valores para o vetor: \n"); for (i = 0; i < 20; i++) { printf("[%d]: ", i); scanf("%d", &vet[i]); if(vet[i]<=0){ pos=i; break; } } printf("Digite os numeros do intervalo: \n"); while(scanf("%d", &var_1)!=vet[i], scanf("%d", &var_2)!=vet[i]){ printf("Numeros do intervalo invalidos \n"); printf("Digite os numeros do intervalo novamente: \n"); scanf("%d", &var_1); scanf("%d", &var_2); } for(vet[i]=var_1; vet[i]<=var_2; vet[i]++) { printf("%d", vet[i]); } }
  16. Ler um vetor de até 20 elementos. A leitura deverá ser executada até que o vetor fique totalmente preenchido ou seja informado um valor negativo ou zero. Ler 2 valores que representam 2 posições (índices) no vetor (aceitar apenas índices válidos), escrever os valores nas posições entre estes índices (inclusive). Estou com dificuldade de fazer a saída deste exercício(citado a cima), segue a baixo o desenvolvimento do meu código: #include<stdio.h> int main() { int vet[10], soma, i, pos; printf("Digite os valores para o vetor: \n"); for (i = 0; i < 10; i++) { printf("[%d]: ", i); scanf("%d", &vet[i]); if(vet[i]<=0){ pos=i; break; } }
  17. Estou na parte 2 (Alterar senha) e não consigo dar continuidade, sou estudante, e comecei a aprender agora em C, se alguém puder me ajudar fiaria muito grato. Segue condigo onde parei (else if): #include <stdio.h> #include <stdlib.h> #define cls system("cls"); void delay(); #include <string.h> int main(){ int codigo, senha=100932, ret, senhan, senha1; char nome[7]={"helio"},nome2[7]; do{ cls printf("Para prosseguir escolha uma das tres opcaos.\n"); printf("(1) login\n"); printf("(2) alterar senha\n"); printf("(3) sair.\n"); scanf("%d", &codigo); }while(codigo < 1 || codigo > 3); if(codigo == 1){ do{ cls printf("Informe o nome de login: "); scanf("%s",nome); ret = strcmp(nome,nome2); if(ret = 0){ printf("Acesso negado \nInforme o nome de login:\n"); delay(); } }while( ret ); printf("Informe a senha: "); while(scanf ("%d", &senha1), senha1!=senha){ printf("Acesso negado \nInforme a senha: "); } printf("Acesso Permitido."); return main(); }else if( codigo == 2){ printf("Digite a senha atual: \n"); while(scanf ("%d", &senha1), senha1!=senha){ printf("Acesso negado \n"); return main(); } printf("Digite a nova senha: \n"); scanf("%d", senhan); strcpy(senha,senhan); printf("A nova senha eh: %d \n" senha); } return 0; } void delay() { for(int i=0; i<60000; i++) for(int i=0; i<20000; i++); }
  18. Boa noite, A imagem adicionada é sobre o exercício que estou com problemas. Sou estudante e comecei agora a aprender em C, e não estou conseguindo desenvolver meu código corretamente. se alguém puder me ajudar fico agradecido. #include<stdio.h> int main(){ int codigo, senha; char nome[6]="helio",nome2[6]; printf("Para prosseguir escolha uma das tres opcaos. (1) login, (2) alterar senha, (3) sair. \n"); scanf("%d", &codigo); if(codigo=1){ printf("Informe o nome de login: \n"); while(scanf ("%s", &nome2), nome2!="helio"){ printf("Acesso negado \nInforme o nome de login: \n"); } printf("Informe a senha: \n"); while(scanf ("%d", &senha), senha!=100932){ printf("Acesso negado \nInforme a senha: \n"); } printf("Acesso Permitido."); } }

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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

×
×
  • Criar novo...