Exercício 11) Defina uma estrutura que irá representar bandas de música. Essa estrutura deve ter o nome da banda, que tipo de música ela toca, o número de integrantes e em que posição do ranking essa banda está dentre as suas 5 bandas favoritas.
1234567 | struct Bandas{ string nome; string genero; unsigned int ranking; unsigned int integrantes;}; |
Exercício 22) Construa uma declaração de struct em C++ que possa acomodar dados provenientes de uma tabela conforme o exemplo a seguir EXEMPLO NO PDF ORIGINAL:
1234567891011121314 | struct cliente{ string nome; string logradouro; unsigned int numero; string bairro; string complemento; string cidade; string CEP; string tel1; string tel2; string tel3; }; |
Exercício 33) Usando a estrutura da questão 1, crie 5 bandas, posicione-as no ranking e imprima, na ordem correta do ranking, todas as informações de cada banda. Por exemplo:
Nome da Banda: Banda Tal
Tipo de Música: Pop
Quantidade de integrantes: 10
Posição no ranking: 1
12345678910111213141516171819202122232425262728293031323334353637383940414243444546 | #include <iostream>#include <string.h>#include <locale.h> //necessário para usar setlocale using namespace std; int main(){ setlocale(LC_ALL,""); //me permite usar acentuação struct Bandas{ string nome; string genero; unsigned int ranking; unsigned int integrantes; }; Bandas banda[5]; // são estas declarações que causam o Warning "extended initializer lists only available with..." //Para eliminar os warnings no dev c++ é preciso ir em Tools -> Compiler Options e acrescentar -std=c++11 "when calling the compiler" banda[0] = {"Aerosmith", "Rock",5, 9}; banda[1] = {"Fall Out Boy", "Alternative Rock",3, 8}; banda[2] = {"Coldplay", "Pop Rock",4, 5}; banda[3] = {"Maroon 5", "Pop Music",2, 8}; banda[4] = {"Bon Jovi", "Pop Rock",1, 14}; for (int i=1;i<6;i++){//Procuro sequencialmente pelo ranking for (int j=0;j<5; j++){//em cada um dos registros if (banda[j].ranking==i){ //e quando encontrar o correto imprimo // cout << "Banda " << i << ":" << '\n'; cout << "Ranking: "<< banda[j].ranking << '\n'; cout << "Nome: " << banda[j].nome << '\n'; cout << "Genero: " << banda[j].genero << '\n'; cout << "integrantes: " << banda[j].integrantes << '\n'; cout << '\n'; break; } } } return 0;} |
Exercício 44) Defina uma estrutura que irá representar alunos em uma faculdade que contenha o nome, curso, período, disciplinas atuais e notas de uma disciplina que o aluno está pagando atualmente. Crie três alunos e depois imprima, assim como na questão 3, os dados do aluno e sua média.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 | #include <iostream>#include <string.h>#include <locale.h> //necessário para usar setlocale using namespace std; int main(){ setlocale(LC_ALL,""); //me permite usar acentuação struct Alunos{ string nome; string curso; unsigned int periodo; string disciplinas[4]; float notas[3]; }; Alunos aluno[3]; // são estas declarações que causam o Warning "extended initializer lists only available with..." //Para eliminar os wanrings no dev c++ é preciso ir em Tools -> Compiler Options e acrescentar -std=c++11 "when calling the compiler" aluno[0] = {"Jefferson Ryan", "ADS",2, "Estruturas de Dados", "Matemática Computacional", "Projeto de Bancos de Dados", "Usabilidade de Interfaces", 4.5, 7, 10}; aluno[1] = {"Douglas Amâncio", "CC",2, "Algoritmos", "Programação 1", "Projeto de Bancos de Dados", "Usabilidade de Interfaces", 10, 3, 10}; aluno[2] = {"Fulano Beltrano", "SI",2, "Lingua Portuguesa", "Programação 1", "Organização e arquitetura de Computadores", "Usabilidade de Interfaces", 4.5, 8, 0}; for (int i=0;i<3;i++){ cout << "Aluno " << i+1 << ":" << '\n'; cout << "Nome: " << aluno[i].nome << '\n'; cout << "Curso: " << aluno[i].curso << '\n'; cout << "Periodo: " << aluno[i].periodo << endl; cout << "Disciplina 1: "<< aluno[i].disciplinas[0] << '\n'; cout << "Disciplina 2: "<< aluno[i].disciplinas[1] << '\n'; cout << "Disciplina 3: "<< aluno[i].disciplinas[2] << '\n'; cout << "Disciplina 4: "<< aluno[i].disciplinas[3] << '\n'; float nota1=aluno[i].notas[0]; float nota2=aluno[i].notas[1]; float nota3=aluno[i].notas[2]; cout << "nota AV1: " << nota1 << '\n'; cout << "nota AV2: " << nota2 << '\n'; cout << "nota AV3: " << nota3 << '\n'; cout << '\n'; unsigned int indiceMenor=0; if (nota2<nota1) indiceMenor=1; if (nota3<aluno[i].notas[indiceMenor]) indiceMenor=2; cout << '\n' << "O menor valor é o da AV: " << indiceMenor+1 << '\n' ; //Ignoro o menor valor, somo os restantes e divido por dois float k=0; if (indiceMenor==0) {k=((nota2+nota3)/2);}; if (indiceMenor==1) {k=((nota1+nota3)/2);}; if (indiceMenor==2) {k=((nota1+nota2)/2);}; cout << "Média: " << k << '\n' ; cout << '\n'; } return 0;} |