Ir ao conteúdo
  • Cadastre-se

Alguém poderia me ajudar nesses três programas dessa lista em c++?


Visitante
Ir à solução Resolvido por dontpanic,

Posts recomendados

A lista é essa:

https://dl.dropboxusercontent.com/u/4297019/Aulas/2014-02/Bcc702/lista_exercicios.pdf

 

Estou com dúvida no primeiro exercício, a dúvida é meio boba, consegui fazer ele d um jeito, mas eu gostaria d saber se tem jeito d fazer desse jeito:

 

#include <iostream>
#include <math.h>
using namespace std;

int main()
{
    int x1, y1, x2, y2, d;
    cout << "Digite as coordenandas (x1, y1, x2, y2): ";
    cin>>x1, y1, x2, y2; //Queria colocar tudo d uma vez!!!!! <--------------
    d = sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1));
    cout<<"Distancia entre esse pontos ae é: "<<d<<endl;
    return 0;
}
 

 

No exercício 2, estou com dúvidas se os meu comentários estão certos ou se poderia acrescentar mais alguma coisa!

Meu código:

 

#include <iostream>

using namespace std;

int main()
{
    int x,//Aqui esta declarando uma variavel!
        *xPtr;//Aqui esta criando um ponteiro!
    x=10; //Aqui esta atribuindo o valor 10 para a variável x!
    xPtr = &x; //Aqui, esta direcionando o ponteiro para o endereço de memória da variável x!
    *xPtr = 9; //Aqui, esta atribuindo para o endereço do ponteiro o numero 9 e modificando o valor de x!

    cout<<"Imprime:  " << ++x <<endl; //Aqui, está sendo imprimido o valor q esta na variável x somando mais 1!
    cout<<"Imprime:  " << &x <<endl; //Aqui, está sendo imprimido o endereço que a variável x está na memória!
    cout<<"Imprime:  " << xPtr <<endl; //Aqui, está sendo imprimido o ponteiro onde aponta o endereço da variável x na memória do sistema!
    cout<<"Imprime:  " << &xPtr <<endl; //Aqui, está sendo imprimido o endereço do ponteiro na memória!
    cout<<"Imprime:  " << *xPtr <<endl; //Aqui, esta sendo imprimido o elemento q esta na memória do endereço q o ponteiro esta apontando!
    cout<<"Imprime:  " << ++*xPtr <<endl; //Aqui está sendo imprimido o elemento q está na memória do endereço q o ponteiro está apontando somanado esse elemento com o número 1!

    return 0;
}
 

E o número quatro eu tinha conseguindo fazer ele sem funções d outro jeito, mas do jeito q o exercício pede eu n consegui!

Da uma olhada no meu código:

 

#include <iostream>

using namespace std;

void troca(int &a, int &b ){
    int aux;

    aux = a;
    a = b;
    b = aux;
}

int main()
{
    int vet[6];

    for (int i=0;i<6;i++){
        cout<<"digite o elemento "<<i<<" do vetorzin ae: ";
        cin>>vet;
    }
    cout<<"\n\nVetor original: \n"<<endl;
    for (int i=0;i<6;i++){
        cout<<vet<<" ";
    }

    for (int i=0;i<6;i++){
        troca(vet[5-i],vet);
    }

    cout<<"\n\nVetor invertido: \n"<<endl;
    for (int i=0;i<6;i++){
        cout<<vet<<" ";
    }

    return 0;
}
 

Link para o comentário
Compartilhar em outros sites

  • Solução

1.

'cin >>' é uma função, como outra qualquer no c++. O motivo pelo qual você tá acessando ela com o operador '>>' é porque a classe a qual o cin pertence (istream) faz overload desse operador. Mas no overload ele recebe apenas um parametro por vez.

Então fazer 'cin >> x, y, z' é incorreto pois foge da sintaxe dele. Ele só consegue capturar o primeiro parametro.

Se quiser pode usar 'cin >> x >> y >> z'.

2.

Acho que tá correto... não percebi nada errado.

3.

Nessa parte do código:

for (int i=0;i<6;i++){

troca(vet[5-i],vet);

}

Você tá trocando o elemento 5 por 0... o 4 por 1... o 3 por 2.

Até aí tudo bem... mas como o FOR vai de 0 até 5, então você acaba trocando também o 2 por 3... 1 por 4 e 0 por 5.

Ou seja, até a metade do FOR você trocou os elementos, mas na outra metade do FOR você trocou eles de volta pros valores originais.

Basta fazer o FOR de 0 até 6/2.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

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...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!