Aplicações Informáticas para Engenharia
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dúvida com Matlab

4 participantes

Ir para baixo

Dúvida com Matlab Empty Dúvida com Matlab

Mensagem  ines_goncalves Seg 06 Out 2008, 08:13

Olá! Smile Sou amiga da luluzinha, foi ela que me indicou este fórum, acontece que somos da mesma turma, e eu também estou com dúvidas no mesmo t.p.c. jocolor

Bem, a parte teórica do problema já está feita, o que me está a matar é a parte do matlab scratch

O problema era basicamente para provar que se uma corda desse a volta ao planeta Terra, e depois lhe acrescentassemos 1metro, a folga entre ela e a Terra seria de 16 cm, e não de 1 metro como iria responder o senso comum...Era para resolver matematicamente o problema, utilizando o Matlab para efectuar cálculos e copiar o output obtido.

Ora, acontece que iniciei programção há pouco tempo, e não me está a dar certo o raio da linguagem dos códigos ...
Aquilo que já fiz é o seguinte:

1. O comprimento C de uma circunferência é dado por:
C=2*pi*r

Logo, :
r = C /(2 x pi)

2. Se se acrescentar 1 metro no comprimento C da corda vem que:
R = (C + 1)/(2 x pi) = C/(2 x pi) + 1/(2 x pi) , onde R (raio do fio) é o raio r aumentado devido ao acréscimo de 1 metro no fio.

3. Ora, a primeira parcela do segundo membro, C/(2 x pi) de acordo com o passo 1. equivale a r. Assim, temos para o novo raio (acrescido de 1 metro) :
R = r + 1/(2 x pi)

4.Concluímos assim que o raio aumentado R é igual ao raio da esfera r mais 15,9 cm ≈ 16 cm, pois este valor é 1 metro dividido pelo dobro de pi (2 x pi) . O raciocínio é válido para qualquer esfera, qualquer que seja o raio, seja a Terra, seja uma bola de ténis.

Será que me podiam ajudar a passar isto para linguagem Matlab, como diz no enunciado?
Agradecia ajuda.... pale Bj*

ines_goncalves

Mensagens : 4
Data de inscrição : 06/10/2008

Ir para o topo Ir para baixo

Dúvida com Matlab Empty DUVIDA COM MATLAB

Mensagem  oigres Seg 06 Out 2008, 11:43

Ola,
pelo que percebi deve ser preciso fazer apenas isto.

clc
raio=input('Introduza o raio da circunferencia');
R=raio + 1/(2*pi);
disp(['O raio aumentado da circunferencia é ' num2str(R) '.'])


Smile
oigres
oigres

Mensagens : 12
Data de inscrição : 27/09/2008
Idade : 34

Ir para o topo Ir para baixo

Dúvida com Matlab Empty Re: Dúvida com Matlab

Mensagem  guille Seg 06 Out 2008, 19:04

concordo com o oigres, acho mesmo que só falta no input a referência às unidades terem que ser em metros na introdução do valor do raio, visto que consideras o valor 1 (metros) na tua equação, isto para que não haja confusões Razz
guille
guille

Mensagens : 7
Data de inscrição : 06/10/2008

Ir para o topo Ir para baixo

Dúvida com Matlab Empty DUVIDA COM MATLAB

Mensagem  oigres Ter 07 Out 2008, 00:31

Correcto guille Razz
oigres
oigres

Mensagens : 12
Data de inscrição : 27/09/2008
Idade : 34

Ir para o topo Ir para baixo

Dúvida com Matlab Empty Dúvida com Matlab

Mensagem  ines_goncalves Ter 07 Out 2008, 01:43

Olhem que não, pois essa resposta é da pergunta seguinte que era :

Implemente uma função em Matlab para calcular o perímetro de uma circunferência de raio r. silent



Penso que o principal era mostrar que o Raio aumentado de um metro era igual ao raio mais 1/(2*pi), que sao os tais 16 cm que o senso comum diria que era um metro....



Valeu pela ajuda pessoal Smile

ines_goncalves

Mensagens : 4
Data de inscrição : 06/10/2008

Ir para o topo Ir para baixo

Dúvida com Matlab Empty DUVIDA COM MATLAB

Mensagem  oigres Ter 07 Out 2008, 10:04

Olha experimenta atribuir valores ao raio, vais ver que a diferenca vai ser sempre de ~16cm

tongue
oigres
oigres

Mensagens : 12
Data de inscrição : 27/09/2008
Idade : 34

Ir para o topo Ir para baixo

Dúvida com Matlab Empty Dúvida com Matlab

Mensagem  ines_goncalves Qua 08 Out 2008, 06:46

Ah exacto, já entendi pessoal Very Happy

Só mais uma dúvida, como é que defino que o raio so pode tomar valores maiores que zero? clown

lolol, desculpem lá as perguntas

ines_goncalves

Mensagens : 4
Data de inscrição : 06/10/2008

Ir para o topo Ir para baixo

Dúvida com Matlab Empty DUVIDA COM MATLAB

Mensagem  oigres Qua 08 Out 2008, 06:58

ola,

tens apenas de fazer um ciclo while assim:

clc

raio=input('Introduza o raio da circunferencia');
while(raio <= 0)
raio=input('Introduza o raio da circunferencia');
end
R=raio + 1/(2*pi);
disp(['O raio aumentado da circunferencia é ' num2str(R) '.'])

Smile
oigres
oigres

Mensagens : 12
Data de inscrição : 27/09/2008
Idade : 34

Ir para o topo Ir para baixo

Dúvida com Matlab Empty Re: Dúvida com Matlab

Mensagem  CrIs Qua 08 Out 2008, 07:06

ines_goncalves escreveu:Ah exacto, já entendi pessoal Very Happy

Só mais uma dúvida, como é que defino que o raio so pode tomar valores maiores que zero? clown

lolol, desculpem lá as perguntas



penso que isso será simples...usando o codigo do oigres...basta acrescentar um ciclozinho com a condição de o número ser maior k zero:

clc
raio = 0;
while (sign(raio) < 1)
raio=input('Introduza o raio da circunferencia');
end
R=raio + 1/(2*pi);
disp(['O raio aumentado da circunferencia é ' num2str(R) '.'])



Cristóvão Cordeiro

DEEC
CrIs
CrIs

Mensagens : 8
Data de inscrição : 07/10/2008

Ir para o topo Ir para baixo

Dúvida com Matlab Empty Dúvida com Matlab

Mensagem  ines_goncalves Qui 09 Out 2008, 09:22

Obrigada pela ajuda pessoal Very Happy

ines_goncalves

Mensagens : 4
Data de inscrição : 06/10/2008

Ir para o topo Ir para baixo

Dúvida com Matlab Empty Re: Dúvida com Matlab

Mensagem  Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos