Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Paulo Roberto 12

Estrutura de Repetição C++

Recommended Posts

Boa Tarde,

 

Pessoal estou com problemão(rsrsrs), meu professor de linguagem e programação passou um exercício para fazer e eu faltei o último laboratório de LP, não sei fazer.

 

Você foi convidado pela Federação Potiguar de Futebol para desenvolver um novo software para contabilizar as estatísticas do campeonato estadual. Inicialmente, para testar seus conhecimentos, a federação local solicitou que você desenvolvesse um programa para ler uma seqüência de resultados de um time de futebol qualquer e mostrar os seguintes dados: (a) número de vitórias, (B) número de derrotas, © número de empates e (d) total de pontos. Considere que a entrada de dados é formada pelas seguintes informações: um inteiro positivo n (número de partidas disputadas) e uma seqüência de n pares de inteiros não negativos GP (gols a favor) e GC (gols contra) correspondendo aos resultados das n partidas. Para cada partida, o seu programa deve contabilizar 1 ponto para empate (GP = GC), 3 pontos para vitória (GP > GC) e 0 pontos para derrota (GP < GC).

 

Alguém sabe resolver esse exercício???

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que você já conseguiu fazer? Nós te ajudaremos em suas dúvidas, não em seus deveres.

 

 

Abraços :D

 

já fiz uma parte, olha:

#include <iostream>
using namespace std;

int main()
{
float GP, GC, n, a, B, c, d;
int a1, B1, c1, d1;

cout << "Informe o Numero de Partidas" endl;
Cin >> n;

cout << "Informe o Numero de Gol(s) a Favor da Partida" endl;
Cin >> GP;

cout << "Informe o Numero de Gol(s) Contra da Partida" endl;
Cin >> GC;

1= (GP= GC);
3= (GP> GC);
0= (GP< GC);
n= n;
for(a1= (GP> GC)/3 , B1= (GP< GC)*1, c1= (GP= GC), d1=)
{
	a= a1*n;
	B= B1*n;
	c= c1*n;
	d= d1;


	cout << "Numero de Vitorias" << a << endl;
	cout << "Numero de Derrotas" << B << endl;
	cout << "Numero de Empates" << c << endl;
	cout << "Total de Pontos" << d << endl;
}


return 0;
}

 

eu queria saber o comando para repetir

 

cout << "Informe o Numero de Gol(s) a Favor da Partida" endl;

Cin >> GP;

 

cout << "Informe o Numero de Gol(s) Contra da Partida" endl;

Cin >> GC;

o número de partidas que o usuario digitar, para poder informar quantas vezes essas linhas serão repetidas, você sabe?

mas o Geany não tá executando aqui, então não sei se tá certo :( e tambem não sei como calcular o numero de pontos, dá uma ajudinha ae! :), você é minha última esperança, tenho até ás 29:59 para enviar, hoje é feriado aqui e a monitoria não funciona, faço Engenharia Civil na UFRN, não sei porque tem Linguagem de Programação, se fosse a de computação ou redes ficava calado .

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá!

 

O que é Geany?

 

 

Lembre-se que em C e C++ os caracteres são case-sensitive, por isso, Cin é diferente de cin e é, no caso, algo não definido.

 

e aqui:

 

cout << "Informe o Numero de Partidas" endl;

 

é, na verdade:

 

cout << "Informe o Numero de Partidas" << endl;

 

E para todas as outras repetições disso.

 

 

 1= (GP= GC);

 

Onde quer chegar com isso? Quer tentar atribuir GP (que será igual a GC) a 1?

 

 

n=n;

 

Atribuir um valor a ele mesmo, o que isso muda?

 

d1= )

 

Cadê o resto do d1 no for?

 

 

Coloque nomes mais descritivos nas suas variáveis, também vai deixar menos confuso seu código.

 

 

Abraços :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você foi convidado pela Federação Potiguar de Futebol para desenvolver um novo software  para contabilizar as estatísticas do 

campeonato estadual. Inicialmente, para testar seus conhecimentos, a federação local solicitou que você desenvolvesse um programa para 

ler uma seqüência de resultados de um time de futebol qualquer e mostrar os seguintes dados: ( a ) número de vitórias, ( B ) número de 

derrotas, ( c ) número de empates e ( d ) total de pontos. Considere que a entrada de dados é formada pelas seguintes informações: um 

inteiro positivo n (número de partidas disputadas) e uma seqüência de n pares de inteiros não negativos GP (gols a favor) e GC (gols 

contra) correspondendo aos resultados das n partidas. Para cada partida, o seu programa deve contabilizar 1 ponto para empate (GP = 

GC), 3 pontos para vitória (GP > GC) e 0 pontos para derrota (GP < GC).

 

Geany é o programa que estou usando, na questão ele diz: e o número de gols a favor (GP) for igual a o número de gols contra (GC)(empate) o time ganha 1 ponto, se GP>GC(ganhou) ganha 3 pontos e GP<GC(perdeu o jogo) 0 pontos,como faço para escrever isso no programa? d1 é a variável que será usada para calcular o numero de pontos que o time somou em todas as partidas, é isso ai que eu não sei fazer!

assim está certo?

#include <iostream>
using namespace std;

int main()
{
float GP, GC, n, a, B, c, d;
int a1, B1, c1, d1;

cout << "Informe o Numero de Partidas" << endl;
cin >> n;

cout << "Informe o Numero de Gol(s) a Favor da Partida" <<endl;
cin >> GP;

cout << "Informe o Numero de Gol(s) Contra da Partida" << endl;
cin >> GC;

1= (GP= GC);
3= (GP> GC);
0= (GP< GC);

for(a1= (GP> GC)/3 , B1= (GP< GC)*1, c1= (GP= GC), d1=)
{
	a= a1*n;
	B= B1*n;
	c= c1*n;
	d= d1;


	cout << "Numero de Vitorias" << a << endl;
	cout << "Numero de Derrotas" << B << endl;
	cout << "Numero de Empates" << c << endl;
	cout << "Total de Pontos" << d << endl;
}


return 0;
}

 

Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá!

 

Eu falei que em C e C++ as letras são case-sensitive, por isso, o escrito abaixo está errado:

 

 Cin >> n;

 

O certo é:

 

 cin >> n;

 

 

Outra coisa, pra que isso, você entende o que está fazendo?

 

1= (GP= GC);

 

Você está tentando atribuir a uma constante o valor da variável GC, enquanto atribui o valor de GC a GP. Não estava tentando fazer algo do tipo abaixo?

 

if( (GP == GC) == 1 )
   /* ... */;

 

Lembre-se que = é diferente de == em C e C++. E também lembre-se que o compilador não vai tentar te intender, ele vai aceitar o que você escreveu ou não, desde que esteja certo ou errado. Escreva certo, ele não vai aceitar algo errado.

 

 

O que você quis dizer com o escrito acima?

 

Abraços :D

 

@edit:

 

Parece que você quis fazer o seguinte:

 

if( GP == GC )
   d += 3;

 

 

Isso não faz mais sentido? Tente sintetizar o escrito em um algoritmo, pois na verdade você só colocou o esqueleto de algo que não faz sentido em C++. Pesquise no google, leia apostilas, sei lá, entenda como C++ funciona.

 

 

 

Abraços :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

é isso ae if( (GP == GC) == 1 ), como que escrevo no programa para somar todos os pontos obtidos do "time"? o que seria o escrito acima á que se refere? se for o texto, é a questão a ser resolvida. eu não entendo nada de C++, to pagando na matéria de Linguagem e Programação na facu, tenho que enviar para o professor até as 23:59 de hoje

 

seria algo assim?

#include <iostream>
using namespace std;

int main()
{
       int GP, GC, n, a, B, c, d;
       float a1, B1, c1, d1;

       cout << "Informe o Numero de Partidas" << endl;
       cin >> n;

       cout << "Informe o Numero de Gol(s) a Favor da Partida" <<endl;
       cin >> GP;

       cout << "Informe o Numero de Gol(s) Contra da Partida" << endl;
       cin >> GC;

       if( (GP == GC) == 1 )
       if( (GP > GC) == 3 )
       if( (GP < GC) == 0 )


       for(a1= ( (GP  > GC) == 3)/3) , B1= ((GP < GC) == 0)*1), c1= ((GP == GC) == 1), d1=)
       {
               a= a1*n;
               B= B1*n;
               c= c1*n;
               d= d1;               
       }

       cout << "Numero de Vitorias" << a << endl;
       cout << "Numero de Derrotas" << B << endl;
       cout << "Numero de Empates" << c << endl;
       cout << "Total de Pontos" << d << endl;

       return 0;
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pena não entender nada de C++. Se está no seu curso, é porque deve ter alguma utilidade aprender. O que acontece é que C++ é a linguagem de médio nível mais usada para misturar baixo com alto nível, sendo usada no desenvolvimento de sistemas operacionais, aplicativos de altíssima performance, outras linguagens de programação, tudo é feito em C ou C++ na camada anterior ao assembly, pois é uma linguagem relativamente fácil de aprender e programar e que alcança um desempenho comparado ao de assembly se estiver em um programa bem escrito.

 

Nós não vamos fazer seu dever até as 23:59. Nós não vamos te dar o exercício feito. Esse fórum é para tirar dúvidas quanto à linguagem, e não helpdesk quanto a exercícios. Se você acha que só porque escreveu o básico de input e output e colocou algumas coisas sem sentido que supostamente comprovam suas dúvidas vamos te dar o código pronto, está redondamente enganado. Você não está nem tentando, pois se tentasse já teria, ao longo desse dia, conseguido, tanto por apostilas, quanto pelo próprio Google, aprender a fazer algo tão simples como esse programa.

 

Talvez valha a pena pensar duas vezes antes de matar uma aula de LP (se não matou, sendo algum motivo justificável, como alguma doença que tem comprovação médica, reclame com o professor, rs)...

 

Boa noite. Você tem 2 horas, dá pra conseguir até lá. Estude o exercício, organize na sua mente como sintetizá-lo em um algoritmo, e o escreva. Se for mais fácil, pra quebrar um galho, escreva em uma linguagem de mais alto nível e depois reescreva o código (que agora você já tem a lógica) em C++. Vai ser bem mais fácil se conhece outra linguagem, até mesmo Portugol, portar um código que fazer do zero em uma linguagem que não conhece...

 

 

Boa noite.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.