uso internet explorer 8, e falhou, linha 19 caracter 1, a não esta difinido...
add msn
[email protected]
Versão Imprimível
uso internet explorer 8, e falhou, linha 19 caracter 1, a não esta difinido...
add msn
[email protected]
Maldito IE e suas certas incompatibilidades com objetos...
<html>
<head>
</head>
<body>
<form name="form1">
<select id=nome name="nome" style="width: 400px;">
<option value="1" name="op">nome1</option>
<option value="2" name="op">nome2</option>
<option value="3" name="op">nome3</option>
</select>
</form>
valor da opção selecionada:
<input type="text" id="resultado" size="1">
<script>
function g(id){ return document.getElementById(id);}
g("nome").onchange = function() {g("resultado").value = this.value;}
</script>
</body>
</html>
Pessoal estou precisando de um help urgente!
Não quero resolução alguma, se possivel gostaria de idéias para atingir tal meta.
Eu e mais alguns amigos já discutimos milhares de possibilidades porem sem nenhuma conclusão :SCitação:
Mostre que o segundo menor entre n elementos de um vetor pode ser encontrado com n + (lg n) - 2 comparações, no pior caso.
Obs.: deve explicitar qual a situação que é o pior caso que pode se deparar!
E implemente um programa que calcule esse segundo menor elemento utilizando esse número de comparações para diferentes vetores passados via entrada padrão.
Obs.: seu programa deve armazenar em alguma variável global todas as comparações que realizar e imprimir na tela essa contagem ao final de sua execução, juntamente com o valor de comparações calculado a partir da fórmula: n + (lg n) - 2.
Maiores informações podem ser consultadas no livro:
¬ Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein. Algoritmos: Teoria e Prática. Capítulo 9, págs.147-148.
A questão é... no nosso melhor caso não chega nem próximo desse pior que ele está querendo.
Pensamos em Heap, merge e quick... o quick de 3x esse valor que ele definiiu como pior possibilidade.
É um trabalho sim, estou recorrendo ao fórum pois não guento mais viajar em idéias :S
Preciso de novas opniões para ver se surgem idéias diferentes.
valor -2.
Quem faz tira 0 quem não faz perde 2 pontos.
Linguagem?
não há a necessidade de linguagem, só de uma ajuda, um norte para eu seguir.
Amigao, fiz essa rotina, em C, os padroes, sao o vetor ja criado, o tamanho do mesmo, e o contador, que retorna por referencia o valor de comparaçoes realizadas...
int S_menor (int *v, int tam, int &cont)
{
int S_menor, Menor;
int *p;
p = &v[0];
S_menor = 10000; // Qualquer valor bem grande
Menor = *p;
while ( p != &v[tam-1] )
{
p++;
if ( *p < Menor )
{
S_menor = Menor;
Menor = *p;
cont++;
}
else
{
if ( *p < S_menor && *p != Menor )
{
S_menor = *p;
cont++;
}
}
}
return S_menor;
}
A rotina retorna valor errado, caso todos os numeros do vetor tenham o mesmo valor, isso pode ser facilmente concertado com :
if ( S_menor == 10000 )
return Menor
else
return S_menor
Mas acredito que em casos normais isso nao vai ser necessario...
flws
"Uma caixa tem cédulas de 10,20,30. Faça um programa que peça uma quantia (inteira) e exiba a quantidade de cédulas correspondentes."
Pré-requisitos: Scanf, Printf, operadores.
Tenho que fazer isso em C, mas da maneira que eu fiz só mostra o número de cédulas iguais..
A idéia é que se a quantia for 100, o programa apresenta 30 + 30 + 30 + 10. Ao invés de 10 + 10....
Código:...
...
{
int Q,D=10,V=20,T=30;
scanf ("%d", &Q);
if Q%D=0 then
printf ("%d cédulas de 10",Q/D);
if Q%V=0 then
printf ("%d cédulas de 20",Q/V);
if Q%T=0 then
printf ("%d cédulas de 30",Q/T);
}
/*obs não compilei... sei que a lógica está certa.*/
int main ()
{
int dez = 0, vinte = 0, trinta = 0, troco = 0;
scanf ("%d", &valor); //pegando todo valor;
while (valor > 0)/*enquanto valor for > que 0 significa que ainda falta troco para a pessoa*/
{
/* olha só... to fazendo de um jeito qualquer tem formas melhores de se fazer esses if*/
if ((valor - 30) >= 0)
{
valor = valor - 30;
++trinta; /*mesmo que "trinta = trinta + 1" ou "trinta += 1;"*/
}
else if ((valor - 20) >= 0)
{
valor = valor - 20;
++vinte;
}
else if ((valor - 10) >= 0)
{
valor = valor - 10;
++dez;
}
else
{
troco = valor;
valor = 0;
}
}
printf ("o troco será de %d notas de 30, %d notas de 20, %d notas de 10 e um troco sem notas de %d", trinta, vinte, dez, troco);
return 0;
}
Valeu jurubeba, você entende mesmo de C hein.
Só uma pergunta básica, se você fizer scanf com uma variável que você não declarou antes, ele vai aceitar?
Porque você fez:
scanf ("%d", &valor);
E você não tinha declarado antes o 'valor'.
Eu nunca entendia onde eu iria usar o incremente ou decremento, agora eu já sei.
:P
Edit:
Mais uma dúvida sobre C, qual a diferença do void main(), int void () e outros.. ?
Comecei C esse semestre, então eu ainda estou aprendendo...
Não. Isso gera um error.
Esqueci de declara-la srry.
Só declarar e foi onti.
Tem formas melhores de se fazer isso em.
To meio viajando na maionese em um problema aqui... por isso fiz dessa forma mesmo :S
void ele é qualquer tipo... Sim confuso... complicado.
o void é utilizado quando não há retorno.
Você usará ele bastante quando mecher com funções e procedimentos.
Por exemplo uma função caracteriza retorno então você declara essa função com um tipo comum (int, float, double, "estruturas")
um procedimento não retorna nada por isso é declarado como void.
o void támbem é usado na ordenação Quicksort que já tem.
Por que?
Essa ordenação Quick pede o "vetor" que será ordenado e a quantidade de bytes que ele ocupa.
Eles passa então para uma func com variaveis void esses 2 parametros e através disso fazendo umas loucuras ele ordena.
Não se preocupe com o void... por enquanto você não precisa saber disso.
@Edit:
Resumindo?
Void é tudo e nada...
Ele pode ser considerado vazio e cheio.
o lance de usar ele em ordenação de qualquer tipo é complicado. Estou no segundo ano brincando com C e não consegui implementar essa função ainda.