Matriz

1. Matriz

Bernardo Beck da Silva
BeBeckS

(usa Outra)

Enviado em 14/08/2020 - 18:04h

Crie uma matriz que receba oito notas e os nomes dos alunos. Exibir na tela quais as notas informadas com os respectivos nomes. Utilizo o "Dev C++"

Alguém poderia me ajudar em como exibir o nome juntamente com as notas informadas?



  


2. Re: Matriz

Paulo
paulo1205

(usa Ubuntu)

Enviado em 14/08/2020 - 18:39h

BeBeckS escreveu:

PODE MANDAR O CÓDIGO SE QUISER.


Na verdade, é melhor que ninguém envie código nenhum, pois além de provavelmente não ajudar de modo nenhum no seu aprendizado, também é antiético, de um modo que vai contra o espírito que está na própria descrição da comunidade onde a pergunta foi feita.

Talvez você devesse tentar fazer, e trazer aqui as dúvidas que você tiver. Desse jeito, você provavelmente vai ter um aprendizado mais consistente, e não fará nada que esbarre nos limites do que qualquer pessoa consideraria um comportamento ético.


... Então Jesus afirmou de novo: “(...) eu vim para que tenham vida, e a tenham plenamente.” (João 10:7-10)


3. Re: Matriz

Bernardo Beck da Silva
BeBeckS

(usa Outra)

Enviado em 14/08/2020 - 19:29h

paulo1205 escreveu:

Talvez você devesse tentar fazer, e trazer aqui as dúvidas que você tiver. Desse jeito, você provavelmente vai ter um aprendizado mais consistente, e não fará nada que esbarre nos limites do que qualquer pessoa consideraria um comportamento ético.


... Então Jesus afirmou de novo: “(...) eu vim para que tenham vida, e a tenham plenamente.” (João 10:7-10)


Bom, eu fiz assim, porém como sou novo na área, não sei como ligar com a variável "char" a qual ainda não coloquei no código.

#include<stdio.h> 
int main()

{
int i, j, m[2][4];


for(i=0;i<2;i++)
for(j=0;j<4;j++)
{
printf("Nota[%d][%d]= ",i,j);
scanf("%d",&m[i][j]);
}


printf("\n Notas dos alunos\n");
for(i=0;i<2;i++)
{
for(j=0;j<4;j++)
printf("%d ",m[i][j]);
printf("\n");
}


return 0;
}



4. Re: Matriz

Paulo
paulo1205

(usa Ubuntu)

Enviado em 14/08/2020 - 20:14h

BeBeckS escreveu:

Crie uma matriz que receba oito notas e os nomes dos alunos. Exibir na tela quais as notas informadas com os respectivos nomes. Utilizo o "Dev C++"


Acho que o enunciado está um pouco confuso, e que o que você fez não bate muito com o que eu consigo entender desse enunciado confuso.

Por que acho que está confuso? Por que ele fala em "uma matriz", mas depois dá a entender que se devem ler "oito notas" e "nomes dos alunos", de uma maneira que, parece, a cada nome corresponde apenas uma nota (ou até, num pior caso, a mesma nota poderia corresponder a mais de um nome, mas eu nem vou entrar muito nessa seara). Não vejo, portanto, espaço para matrizes, e menos ainda para uma matriz só, já que são dois tipos de dados diferentes.

Outro problema é que você não disse em qual linguagem o programa deve ser implementado. O máximo que você disse foi que está usando "Dev C++" (por sinal, uma ferramenta, ao que parece, obsoleta; talvez você devesse considerar migrar para algo como o Code::Blocks). O código que você mostrou parece estar em C, mas também pode ser um C++ arcaico. Se você puder usar um C++ mais moderno, algumas coisas podem ficar mais fáceis, incluindo trabalhar com os nomes.

Alguém poderia me ajudar em como exibir o nome juntamente com as notas informadas?


Se realmente forem oito nomes e oito notas, com uma nota por nome, você terá dois vetores: um de números (int se as notas só puderem ter valores inteiros, float ou double se puderem ter valores fracionários) e um de strings (cada string podendo ser um vetor de caracteres, se for em C, mas também algo mais conveniente, tal como std::string, se você estiver usando C++). Na fase de leitura, você lê em sequência cada nome e cada nota, em posições sucessivas dos respectivos vetores de cada um. Depois, ao imprimir, faz basicamente a mesma varredura, mas imprimindo em vez de lendo.


... Então Jesus afirmou de novo: “(...) eu vim para que tenham vida, e a tenham plenamente.” (João 10:7-10)


5. Re: Matriz

Danilo Marto
danilomarto

(usa Debian)

Enviado em 15/08/2020 - 08:42h




BeBeckS escreveu:

Crie uma matriz que receba oito notas e os nomes dos alunos. Exibir na tela quais as notas informadas com os respectivos nomes. Utilizo o "Dev C++"

Alguém poderia me ajudar em como exibir o nome juntamente com as notas informadas?


Oi!

Você quer uma matriz com 8 células, cada uma com a nota e o nome do aluno?

Para fazer isso, só usando o struct

struct {
float nota;
char nomeAluno[tamanhoNome];
} classe[tamanhoMatriz];


Agora, você quer uma matrix para as notas e uma para os nomes dos alunos?

Bom... então você terá que criar duas matrizes

int notas[tamanhoMatrix];
char nomeAluno[tamanhoMatrix][tamanhoNomeAluno];


Para o primeiro caso você pode manipulá-las da seguinte forma

// inseri as notas e os nomes
for(int i = 0; i < tamanhoMatriz; i++) {
scanf("%f", &classe[i].nota);
fscanf(stdin, " %s", classe[i].nomeAluno);
}

// exibe as notas e os nomes
for(int i = 0; i < tamanhoMatriz; i++) {
fprintf(stdout, "%s\t%3.2f\n", classe[i].nomeAluno, classe[i].nota);
}


Já para o segundo:

// inseri as notas e os nomes
for(int i = 0; i < tamanhoMatriz; i++) {
scanf("%f", &nota[i]);
fscanf(stdin, " %s", nomeAluno[i]);
}

// exibe as notas e os nomes
for(int i = 0; i < tamanhoMatriz; i++) {
fprintf(stdout, "%s\t%3.2f\n", nota[i], nomeAluno[i]);
}


Se eu fiz disse alguma coisa errada, por favor, corrijam-me.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts