Darkside  

Voltar   Darkside > Darkside > Comunidade
FAQ Calendário Postagens do dia Buscapé Search

Responder
 
Thread Tools
jota
Trooper
 

Question [DS PROGRAMADORES] Ajuda Algoritmo!

19-07-07, 19:29 #1
Fala moçada ! estou com dificuldade de resolver este exercício de algoritmo:

3) O Senac Campo Grande, deseja conhecer a idade de todos os seus 700 alunos.
Faça um algoritmo que receba e armazene o nome e a idade dos 700 alunos do senac.
Verifique qual é a menor idade de um aluno do Senac.
Imprima a menor idade e o nome de todos os alunos que tenham essa idade.

eu sei que primeiro eu vou ter que usar a estrutura de repetição junto com a de vetor, pra ele poder ler o nome e a idade dos alunos

mas eu não sei como eu consigo verificar qual é a menor idade no vetor, eu teria que organizar ele primeiro ? e depois como eu iria imprimir todos os alunos com a mesma idade ?

obrigado desde já ! abraços !





jota is offline   Reply With Quote
Jeep
fagmin
 

XFIRE ID: ds-jeep Steam ID: jeep_ds
19-07-07, 19:43 #2
idade=1000

faca um loop do primeiro ao ultimo elemento
a cada elemento compare com a variavel idade, se for menor, atualize o valor de "idade"

imprima idade (conhecida como idade_minima daqui pra frente )

repita o loop e imprima apenas quando idade_vetor=idade_minima

deve ter algum jeito mais eficiente que esse semi bubble, mas quebra o galho

Jeep is offline   Reply With Quote
jota
Trooper
 

19-07-07, 19:55 #3
saquei Jeep, mas por que tenho que atribuir o valor inicial de idade=1000 ?

jota is offline   Reply With Quote
shogun
Trooper
 

19-07-07, 20:00 #4
Quote:
Postado por jota
saquei Jeep, mas por que tenho que atribuir o valor inicial de idade=1000 ?
 

shogun is offline   Reply With Quote
Ted
Trooper
 

Gamertag: MassahudDS PSN ID: massahud Steam ID: massahud
19-07-07, 20:01 #5
Pq o jeep acha que nenhum aluno vai ter mais de 1000 anos. Mas se por acaso todos tiverem é mais seguro vc fazer idade ser o valor da idade do primeiro aluno da lista.

Ted is offline   Reply With Quote
AcquiencE
Trooper
 

19-07-07, 20:04 #6
ASEHSAHUEASHEHASHEUSAHEUAS SHOGUN

AcquiencE is offline   Reply With Quote
jota
Trooper
 

19-07-07, 20:18 #7
eu imaginei isso! valeu aí galera !

jota is offline   Reply With Quote
Bombastic
The Alpha Male
 

19-07-07, 20:58 #8
ordene o seu vetor antes, e depois só precisa percorrer 1x para achar a menor idade e mostrar os alunos com essa idade

Bombastic is offline   Reply With Quote
gori
Trooper
 

19-07-07, 21:18 #9
idade=MAX_INT

resolve o problema

gori is offline   Reply With Quote
ZeroCarontE
Trooper
 

19-07-07, 21:24 #10
bomba, ordenar o vetor eh O(n log n), percorrer 2 vezes eh O(n)

mas se puder usar ordenação, fica mais rapido pra programar, jah q soh vai fazer 1 for mesmo

ZeroCarontE is offline   Reply With Quote
Bombastic
The Alpha Male
 

19-07-07, 22:06 #11
Quote:
Postado por ZeroCarontE
bomba, ordenar o vetor eh O(n log n), percorrer 2 vezes eh O(n)

mas se puder usar ordenação, fica mais rapido pra programar, jah q soh vai fazer 1 for mesmo

Arrays.sort

for (...)




o negocio do cara eh desenvolver uma coisa rapido, nao eh sistema critico de alta performance, nem sistema em tempo real

logo, sou mais a minha solucao, vai economizar uns bons 10 segundos na vida dele

Bombastic is offline   Reply With Quote
Jeep
fagmin
 

XFIRE ID: ds-jeep Steam ID: jeep_ds
19-07-07, 22:20 #12
Uma duvida, como nao é necessario uma lista sorteada na listagem, dependendo do tamanho do vetor nao é muita coisa sortear a lista inteira?

Meu "metodo" vai dar 2 full scans na tabela, ou seja, em N elementos, vai acessar N*2 elementos. Do outro, mesmo que sejam aqueles algoritmos de sort mega otimizados, vai ter menos acessos?

Jeep is offline   Reply With Quote
ZeroCarontE
Trooper
 

19-07-07, 22:28 #13
foi oq eu disse jeep
ordenar um vetor por metodos rapidos eh da ordem de O(n log n) operações, ou seja, vai acessar aproximadamente 6615 vezes (pra 700 elementos).. e dps mais M vezes, q seria o numero de pessoas com a idade minima (no maximo 700)
ordenar por metodos simples (bubble por exemplo) eh O(n²), levaria 490.000 operações pra ordenar

com 2*N seria sempre 1400
nesse caso especifico o algoritmo mais eficiente eh esse mesmo (ou seja, soh vai fazer essa busca 1 vez, e apos tds os elementos serem inseridos primeiro)

e eu sou mais minha solução q eh ateh 5x mais eficiente nesse cenario, em troca de 10 segundos de programação a mais

ZeroCarontE is offline   Reply With Quote
jota
Trooper
 

19-07-07, 22:43 #14
escrevi o algoritmo, ele ficou assim, não ordenei ele porque ele pede pra ordenar no próximo exercício

Code:
algoritmo "Ex3"

var
   alunos: vetor [0..6] de caractere
   idades: vetor [0..6] de inteiro
   indice, menorIdade: inteiro
   nomeMenor: caractere

inicio
   indice <- 0
   menorIdade <- 1000

   // Leitura do nome e idade dos alunos
   enquanto (indice < 7) faca
      escreva ("Por favor, insira o nome do aluno: ")
      leia (alunos[indice])
      escreva ("Por favor, insira a idade deste aluno: ")
      leia (idades[indice])
      indice <- indice + 1
   fimenquanto

   // Verifica o aluno com a menor idade
   indice <- 0
   enquanto (indice < 7) faca
      se (idades[indice] < menorIdade) entao
      menorIdade <- idades[indice]
      nomeMenor <- alunos[indice]
      fimse
      indice <- indice + 1
   fimenquanto

   // Imprime a menor idade
   escreva ("A menor idade é: ")
   escreva (menorIdade)
   escreva (nomeMenor)
   
   // Imprime todos os alunos com a menor idade
   indice <- 0
   enquanto (indice < 7) faca
      se (idades[indice] = menorIdade) entao
         escreva (idades[indice])
         escreva (alunos[indice])
      fimse
      indice <- indice + 1
   fimenquanto

fimalgoritmo

jota is offline   Reply With Quote
Ted
Trooper
 

Gamertag: MassahudDS PSN ID: massahud Steam ID: massahud
19-07-07, 22:46 #15
Minha solução para uma execução rápida seria ter outro vetor para salvar os menores, ai enquanto ele lia ele já ia colocando os iguais ao menor valor nesse vetor. Se o menor valor mudasse, ele começaria a preencher o vetor do inicio de novo. No final seria só ler os números desse vetor até a posição atual de inserção.

Ted is offline   Reply With Quote
Kensha
Trooper
 

Gamertag: ksnrodrigoms PSN ID: rodrigo_machado
19-07-07, 22:47 #16
pra verificar a idade sem fazer idade = 1000 (pq ng passa de 1000 anos... )

faz idade=0
e depois um if
se for igual armazena a primera posicao do vetor...
e depois vai verificando...

Kensha is offline   Reply With Quote
ZeroCarontE
Trooper
 

19-07-07, 23:04 #17
jota, seu algoritmo eh pra 7 pessoas, nao 700
de qq forma, vc vai imprimir o nome de algum aluno 2x, pq vc imprime apos achar e dps imprime ele denovo junto com "td mundo com essa idade".. imagino q nao era pra acontecer isso

e qt ao numero magico 1000, tira ele e assume q a menor idade eh a do primeiro sujeito.. se existe menor, ele vai ser encontrado, se nao existe menor, eh uma idade valida (enquanto 1000 poderia nao ser, caso os alunos tenham idade acima de 1000.. a nao ser q tenha sido especificado q nenhum aluno tem mais q 999 anos )

ted, vc tah piorando.. imagine uma situação q as idades sao assim: 1 2 3 4 5 6 ...
assim a cada idade lida, ele vai ter q atualizar o vetor de "iguais a menor".. e pra atualizar, ele ia ter q buscar na lista geral, um a um, qm tem a idade atualizada.. ou seja, supondo o pior caso do seu algoritmo (as idades forem crescentes): para cada aluno procurar em cada aluno qm tem a idade do primeiro aluno.. eh O(n²)

ZeroCarontE is offline   Reply With Quote
Jeep
fagmin
 

XFIRE ID: ds-jeep Steam ID: jeep_ds
19-07-07, 23:12 #18
Na realidade, basta ja colocar a comparacao na entrada de dados, a cada digitacao ele compara e pronto, ja teremos a menor_idade, em seguida o loop simples de impressao baseado nessa variavel e fim

Jeep is offline   Reply With Quote
drakiN
Trooper
 

Steam ID: drakiN
19-07-07, 23:31 #19
sei que tu estuda java jota...
então ta aí.
eu não escrevo algoritmos do jeito que tu escreve, então pra não embananar, fiz em java.
(L)

Code:
import javax.swing.JOptionPane;

public class Jota{
	public static void main(String args[]){					   
		int[] arrayAluno = new int[10];
		String recebe = "";
		int idadeMinima = 1000, contaIdadeMinima = 0;
		
		for(int x = 0; x<10; x++){
			recebe = JOptionPane.showInputDialog("Idade do aluno");
			arrayAluno[x] = Integer.parseInt(recebe);
			if(arrayAluno[x] < idadeMinima){idadeMinima = arrayAluno[x]; contaIdadeMinima=0;}			
			if(arrayAluno[x] == idadeMinima){contaIdadeMinima++;}
			System.out.println("Aluno " + x + " = " + arrayAluno[x]);
		}
		
		System.out.println();		
		System.out.println("A menor idade: " + idadeMinima);
		System.out.println("Quantidade de alunos com a idade: " + contaIdadeMinima);
	}
}

drakiN is offline   Reply With Quote
vkMiau
Trooper
 

19-07-07, 23:37 #20
Como hoje o tio (eu) está feliz pq fez alguns gols contra o time do chefe, abaixo segue um algoritmo sem precisar usar ordenação.

http://files.central.googlepages.com/divertido.txt

vkMiau is offline   Reply With Quote
jota
Trooper
 

20-07-07, 01:11 #21
Quote:
Postado por ZeroCarontE
jota, seu algoritmo eh pra 7 pessoas, nao 700
de qq forma, vc vai imprimir o nome de algum aluno 2x, pq vc imprime apos achar e dps imprime ele denovo junto com "td mundo com essa idade".. imagino q nao era pra acontecer isso

e qt ao numero magico 1000, tira ele e assume q a menor idade eh a do primeiro sujeito.. se existe menor, ele vai ser encontrado, se nao existe menor, eh uma idade valida (enquanto 1000 poderia nao ser, caso os alunos tenham idade acima de 1000.. a nao ser q tenha sido especificado q nenhum aluno tem mais q 999 anos )

ted, vc tah piorando.. imagine uma situação q as idades sao assim: 1 2 3 4 5 6 ...
assim a cada idade lida, ele vai ter q atualizar o vetor de "iguais a menor".. e pra atualizar, ele ia ter q buscar na lista geral, um a um, qm tem a idade atualizada.. ou seja, supondo o pior caso do seu algoritmo (as idades forem crescentes): para cada aluno procurar em cada aluno qm tem a idade do primeiro aluno.. eh O(n²)
é verdade não era pra imprimir duas vezes o nome

mas acho que eu consigo arrumar

obrigado aí galera todo mundo que ajudou ;*

jota is offline   Reply With Quote
ZeroCarontE
Trooper
 

20-07-07, 01:30 #22
opa, falei merda
agora vendo o codigo do drakin (e o do vkMiau) q eu entendi oq o Ted disse, nao piora a situação nao
nao tem como existir um igual antes do novo menor na lista, dae eh soh guardar os menores a partir dele mesmo (sem buscar desde o começo).. e o exemplo q eu queria dar era 9 8 7 6, nao 1 2 3 4

"le, acha menor, procura os menores", "le achando menor, procura os menores" e "le achando menor e guardando menores, imprime resposta"

os 3 jeitos sao praticamente identicos em numero de operações (se nao for contar a operação de incrementar o i ¬¬ aUhauahAU)
mas esse ultimo precisa inutilmente de um array adicional e uma iteração adicional (ele faz N comparações pra ver se poe no array, e no final itera pelos M elementos do array.. invez de simplesmente ir comparando N vezes e imprimir direto)

nao adianta, nao tem como melhor significantemente esse algoritmo
KISS

ZeroCarontE is offline   Reply With Quote
drakiN
Trooper
 

Steam ID: drakiN
20-07-07, 01:36 #23
opa, esqueci de trocar o 10 por 700....
coloquei um numerim pra testa, né?

drakiN is offline   Reply With Quote
Ted
Trooper
 

Gamertag: MassahudDS PSN ID: massahud Steam ID: massahud
20-07-07, 06:46 #24
Quote:
Postado por ZeroCarontE
opa, falei merda
agora vendo o codigo do drakin (e o do vkMiau) q eu entendi oq o Ted disse, nao piora a situação nao
nao tem como existir um igual antes do novo menor na lista, dae eh soh guardar os menores a partir dele mesmo (sem buscar desde o começo).. e o exemplo q eu queria dar era 9 8 7 6, nao 1 2 3 4

"le, acha menor, procura os menores", "le achando menor, procura os menores" e "le achando menor e guardando menores, imprime resposta"

os 3 jeitos sao praticamente identicos em numero de operações (se nao for contar a operação de incrementar o i ¬¬ aUhauahAU)
mas esse ultimo precisa inutilmente de um array adicional e uma iteração adicional (ele faz N comparações pra ver se poe no array, e no final itera pelos M elementos do array.. invez de simplesmente ir comparando N vezes e imprimir direto)

nao adianta, nao tem como melhor significantemente esse algoritmo
KISS
Não é inutil o array, os outros precisam passar mais uma vez no array inicial, equanto o meu passa só nos menores. E se os dados do array inicial puderem ser modificados, da pra usar o proprio array para armazenar. Só que vai continuar sendo O(n), pq não da pra ser menos que O(n) já que sempre tem que passar por todos os alunos pelo menos uma vez.

Ted is offline   Reply With Quote
Bombastic
The Alpha Male
 

20-07-07, 07:30 #25
vou dar uma dica pra vc zerocantone
que li a muito tempo em um artigo e guardei na minha mente
ele fala sobre essa questao de otimizar codigo etc

"premature optimization is the root of all evil"

depois vou tentar achar o artigo que vc vai entender o pq da frase huehuehue
eh um artigo pequeno da ibm com dicas de desenvolvimento bobinhas

Bombastic is offline   Reply With Quote
Gerson
Trooper
 

20-07-07, 08:53 #26
Fazer o código o mais simplificado possível é coisa de algoritmos I.
Realmente é mto interessante pensar nos jeitos mais simples de realizar uma idéia.
Porém, quando se começa a fazer coisas maiores, é melhor optar pela solução mais lógica/orientada à objetos.

Gerson is offline   Reply With Quote
Bombastic
The Alpha Male
 

20-07-07, 10:56 #28
essa pagina é boa, micro-otimização desnecessaria sux pra caralho



outro topico: http://en.wikipedia.org/wiki/Optimiz...mputer_science)

Bombastic is offline   Reply With Quote
ChakaN
Banned
 

20-07-07, 11:18 #29
na minha opiniao, o melhor e mais curto algoritmo nao deve guardar nome e idade dos menores idades em um outro vetor
ele deve no vetor dos felizardos mais jovens guardar apenas o indice da posicao da idade

o custo de processamento para guardar poucos indices que contem numeros pequenos custa muitissimo menos que guardar strings

por isso recomendo guardar apenas os indices no vetor do resultado da pesquisa, o dia que vc tiver uma base de dados com gigas de dados vc vai chorar caso resolva duplicar caracteres ao invez de numeros


Code:
menor_idade = 1000; i=0; j=0;
nomes[x...y]
idades[x...y]
indices[x...y]

for i = x to y
   if menor_idade > idades[i] then {menor_idade = idades[i]} end if
next

for i = x to y
   if menor_idade = idades[i] then {j = j + 1; indices[j] = i}  end if
next

for i = 1 to j
   imprima nomes[indices[i]] + " " + idades[indices[i]]
next
edit: sim nao coloquei o for para guardar nome-idade

ChakaN is offline   Reply With Quote
CroNicaL
Trooper
 

Steam ID: cron1cal
20-07-07, 11:21 #30
Quote:
Postado por Jeep
Na realidade, basta ja colocar a comparacao na entrada de dados, a cada digitacao ele compara e pronto, ja teremos a menor_idade, em seguida o loop simples de impressao baseado nessa variavel e fim
exacto

Muita mais simples criar uma função e comparar na entrada, assim guardando os valores em 2 variáveis globais MAIOR e MENOR.

int maiorIdade = 1000;
int menirIdade = 0; //Variaveis globais ja iniciadas

//Metodo de comparação que receberá a idade como atributo em cada entrada
compara(int idade)
{
if (idade > maiorIdade)
&maiorIdade = idade;
else if (idade < menorIdade)
&menorIdade = idade;
}


//Entrada de dados

for(int i=0;i<700;i++){
idade =algumInputdaVida("Digite sua idade : ");
compara(idade);
}


Last edited by CroNicaL; 20-07-07 at 11:29..
CroNicaL is offline   Reply With Quote
ChakaN
Banned
 

20-07-07, 11:24 #31
a ideia do jeep eh otima pra resolver o exercicio
mas no futuro seria em vao, pra fazer pesquisas e relatorios, ia ficar muito lento huuh

ChakaN is offline   Reply With Quote
ZeroCarontE
Trooper
 

20-07-07, 12:02 #32
bomba, otimização PREMATURA aonde? dah impressao q vc qm quis otimizar ordenando o array, fazendo assim "menos iterações" pela lista
fazer varias iterações pela lista procurando o menor, e imprimindo soh os menores, eh bem mais intuitivo..

e eu nao sou o estereotipo de otimizador q vc pode estar pensando.. O(n log n) pra O(n) nao eh micro otimização, eh algo MUITO significativo... desde quando performance 400% a mais (n = 700) eh MICRO?
agora se vc se referia às nano otimizações, como embutir varios fors em um soh, dae eu concordo

a proposito, eu ACHO q vi o artigo da ibm... nao sei se vc colou errado, mas vc colou um artigo da acm q justamente me defende.. e se eu nao me engano tinha uma coisa no artigo da ibm q era "mais vale um algoritmo melhor doq escovação de bit".. e eh por isso q o algoritmo de varias iterações > ordenação
(e nao vo ler td o artigo da wikipedia, se quiser mostra algo mais especifico aUhaauhaUaHuA)
(gostei do termo nano-otimização)

-- a partir daqui, eh discussao sobre nano-otimização desnecessaria --

Ted
entao.. soh q veja soh, pra vc criar esse array com "M" elementos (qts tem a idade menor), vc vai ter q comparar igualdade com tds os N alunos (pq vc vai lendo e vendo se ele eh a menor idade)... se for, vc armazena, e dps vai ter q iterar pelos M alunos pra imprimir

do jeito mais simples vc ainda faz as N comparações (iterando "novamente"), soh q nao "perde tempo" armazenando, imprime direto
simples: faz N comparações de igualdade, faz M impressoes
you: faz N comparações de igualdade, faz M armazenamentos, faz M impressoes

a diferença entre ter 1 for com 2 operações e 2 fors com 1 operação eh q o contador (i, por ex) vai ser incrementado o dobro de vezes.. no seu caso, vc vai fazer menos somas "+1", mas vai fazer mais acesso de escrita à memoria... entao eh totalmente irrelevante discutir qual tem melhor em performance, porem IMHO o codigo fica mais claro se for do jeito simples..


edit: ponto interessante chakan, mas se fosse fazer varias consultas, e a lista de alunos nao mudar, entao seria melhor fazer um cache.. jah se a lista mudar, talvez ordenar e inserir os futuros elementos com insertion sort poderia melhorar a performance em ALGUNS casos.. ou entao se vc quer sempre o menor, poderia otimizar mais ainda pra inserir ordenado soh se ele for menor.. o ganho nao seria tao grande, eh o tipo de coisa q nao deveria ser procupação em um sistema maior e depende de o quao flexivel deveria ser.. outro algoritmo


Last edited by ZeroCarontE; 20-07-07 at 12:10..
ZeroCarontE is offline   Reply With Quote
Ted
Trooper
 

Gamertag: MassahudDS PSN ID: massahud Steam ID: massahud
20-07-07, 12:50 #33
Quote:
Postado por ZeroCarontE
entao eh totalmente irrelevante discutir qual tem melhor em performance, porem IMHO o codigo fica mais claro se for do jeito simples..
Exatamente o que falei, no final tudo é O(n)

Ted is offline   Reply With Quote
Gerson
Trooper
 

20-07-07, 12:55 #34
n creio que vcs tao perdendo tempo discutindo sobre um exercício que se faz com um mes de computação duhaouiea

Gerson is offline   Reply With Quote
ChakaN
Banned
 

20-07-07, 13:19 #35
ou seja...

analise > programacao

sem analise do sistema ao todo, nao tem como PROMETER nada

ChakaN is offline   Reply With Quote
Bombastic
The Alpha Male
 

20-07-07, 13:28 #36
Quote:
Postado por ZeroCarontE
bomba, otimização PREMATURA aonde? dah impressao q vc qm quis otimizar ordenando o array, fazendo assim "menos iterações" pela lista
fazer varias iterações pela lista procurando o menor, e imprimindo soh os menores, eh bem mais intuitivo..
cara, eh um programinha pra faculdade

pra que o cara vai se preocupar com isso?

é esse o meu ponto

pra que perder tempo pensando a melhor solucao se no final das contas não vai fazer diferenca?

e como falaram ai, 1o mes de faculdade

para de viajar

Bombastic is offline   Reply With Quote
ChakaN
Banned
 

20-07-07, 13:36 #37
talvez pq ele queira aprender

ChakaN is offline   Reply With Quote
Bombastic
The Alpha Male
 

20-07-07, 13:46 #38
Quote:
Postado por ChakaN
talvez pq ele queira aprender
ele nao sabe nem fazer um exercicio simples, deixa o cara aprender 1o a fazer o simples, depois vc da uma super aula de super asp

Bombastic is offline   Reply With Quote
ChakaN
Banned
 

20-07-07, 15:13 #39
aprenda a ficar quieto e sair de fininho enquanto tem tempo

ChakaN is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
20-07-07, 15:21 #40
ALOOOOOOOOOOOOOOOOOOOOOOOOOOOCOOOOOOOOOOOO
ZWOW
ZWOWWWWWWWWW
ZWOWWWWWWWWW

maxcool is offline   Reply With Quote
Bombastic
The Alpha Male
 

20-07-07, 15:26 #41
Quote:
Postado por ChakaN
aprenda a ficar quieto e sair de fininho enquanto tem tempo
ficou ofendido aspeiro?

Bombastic is offline   Reply With Quote
ChakaN
Banned
 

20-07-07, 15:31 #42
sim eu ja to cansando dessa tua arrogancia em todo topic que vc aparece
vc precisa a ser mais humilde, sempre fica se achando o bom da boca e flameando

se vc nao aprender a ser mais humilde, alguem vai fazer vc aprender
e se vier de DS blog aqui chorar as pitangas eu vou rir

eu falei de proposito mesmo, e campeei aqui pra confirmar que a imagem que tenho de vc ser um ser arrogante e nariz empinado eh real

ps: sem mais, agora continue falando sozinho por nao saber deixar nada quieto

ChakaN is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
20-07-07, 15:31 #43
UIIIIIIIIIII
CHAMOU DE ASPONE!
EU NAO DEIXAVA HaiuoehrIUEr

maxcool is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
20-07-07, 15:33 #44
ALOOOOOOOCO BOMBA
SANDALIAS DA HUMILDADE!

maxcool is offline   Reply With Quote
hardz
Unbreakable
 

PSN ID: hardwarez
20-07-07, 15:35 #45
Chakan, lembra do cara vindo atrás de vc no SWAT e vc gritando socorro no microfone
aehjueahuaehueaea

tomei um susto da porra....eu la com a OPT scaneando a sala fechada, e vc indo com bomba de gás, spray de pimenta e pistola de paintball... o cara te owno com uma mascara na cara

eahuyaehuaehaeUAEEAaheeauaeuheaeauheuea
Chakowned

hardz is offline   Reply With Quote
Bombastic
The Alpha Male
 

20-07-07, 15:35 #46
Quote:
Postado por ChakaN
sim eu ja to cansando dessa tua arrogancia em todo topic que vc aparece
vc precisa a ser mais humilde, sempre fica se achando o bom da boca e flameando

se vc nao aprender a ser mais humilde, alguem vai fazer vc aprender
e se vier de DS blog aqui chorar as pitangas eu vou rir

eu falei de proposito mesmo, e campeei aqui pra confirmar que a imagem que tenho de vc ser um ser arrogante e nariz empinado eh real

ps: sem mais, agora continue falando sozinho por nao saber deixar nada quieto
porra vc queria bater no kenshin e agora quer me ensinar a ser humilde?

cara, aspeiro = escoria
isso eh fato, nao eh questao de humildade

pode deixar q eu vou abrir um ds blog o dia q eu tiver q fazer qquer merda em asp
ai vc pode me zuar que eu vou ser mais um aspeiro jegue por ai

Bombastic is offline   Reply With Quote
hardz
Unbreakable
 

PSN ID: hardwarez
20-07-07, 15:37 #47
aspeiro
heauheaueahueahuae
sacanagem

hardz is offline   Reply With Quote
ChakaN
Banned
 

20-07-07, 15:44 #48
deixa o kra, eterno trainee, perdedor, anda chutando pedrinha na rua e se achando o sabidao

eu pelo menos fui pra frentena vida e to entrando em .net, e vai apenas mais uma empreitada como qualquer outra que jamais fará eu destratar as pessoas que estao aprendendo

ChakaN is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
20-07-07, 15:47 #49
AIEHRiOUAHRe
ETERNO TRAINEE
agora o chakan falou uma verdade!!!

maxcool is offline   Reply With Quote
Bombastic
The Alpha Male
 

20-07-07, 15:51 #50
AHEUFhaEUIOFhiauhfiuahefuiahIOFuh
porra eterno trainee daonde o sujeito tirou isso?
o pior eh nego acreditar no maisquecu

olha a msg do sujeito no msn

.alfredo. Vai lavar roupa, cambada de frouxa! diz:
os caras veem eu te zoando de trainee e acreditam
.alfredo. Vai lavar roupa, cambada de frouxa! diz:
logo eu > vc
.alfredo. Vai lavar roupa, cambada de frouxa! diz:
uIHAEGOIHAERIUHAEOIUHIUEAHROIUAER



HAUIOEhfuahefiuahefuaf


e o pior, falou que nao ia mais postar me respondendo

o aspeiro doeu na ferida, fica triste nao voce evoluiu, mas .dot é facilmente cagavel tb entao dependendo pode ficar pior que os asps

vai pra frente ai cara, eu podia falar altas coisas aqui mas vou deixar quieto se nao vc vai falar q eu to precisando ser mais humilde e vai querer me ensinar a humildade


aspeiro, fica triste nao todo mundo erra na vida
a 5 anos atraz eu usava asp e achava a melhor maravilha do mundo
1o estagio, sabe como é a gente aprende cada coisa

mas vai nessa, continua evoluindo, só abaixa o topete ai e tente conhecer as pessoas antes de falar que elas sao trainee, perdedores ou chutam pedrinhas na rua
beijo aspeiro

Bombastic is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
20-07-07, 15:54 #51
calado trainee
estaginho
bombastic lewser
vo falar
ele vende churros na frente da UFMG
pronto falei
e só tem de caramelo

maxcool is offline   Reply With Quote
Bombastic
The Alpha Male
 

20-07-07, 15:55 #52
tem de chocolate tb
caramelo era só quando eu era estagiario

e a ufmg eh longe pra caralho eu trabalho na savassi

Bombastic is offline   Reply With Quote
Bone
inativo
 

20-07-07, 16:10 #53
E o Zero ainda perde tempo discutindo hoeuahouheao

Bone is offline   Reply With Quote
percezione
Trooper
 

Steam ID: brunorei
21-07-07, 01:13 #54
aff o cara ja resolveu o exercicio dele deixem de ser nerds pqp
next
(p0rn pl33z)

percezione is offline   Reply With Quote
chrysler
Trooper
 

Gamertag: x bOuL Steam ID: kqchrysler
21-07-07, 01:33 #55
isso tudo eu nao vou usar pra porra nenhuma na minha vida
e 98% aqui tb nao vai usar..
pq esses fdps fazem esses tipos de questão?

chrysler is offline   Reply With Quote
Gerson
Trooper
 

21-07-07, 02:11 #56
n creio que tu ta falando sério chrysler
aeuioeua

Gerson is offline   Reply With Quote
vkMiau
Trooper
 

21-07-07, 03:06 #57
Jovens, o jota só pediu ajuda e não que vocês se pegassem.

No meu código, os dois for não são O(n), mas sim O(700) pois é constante, nós sabemos o quanto vai percorrer, não há ordenação e nem busca.

Definição:
"Seja K um valor constante e um algoritmo O(K) então essa é a solução de menor complexidade."

ZeroCarótidA, o que tem incrementar o i? Essa operação não conta em complexidade de algoritmos. A primeira coisa que aprendi é que tudo q estiver dentro de qualquer estrutura de repetição pode ser ignorado (exceto outras estruturas de repetição). Em complexidade o que conta é quantas vezes é feito e não o que é feito. Ah, o problema é escrita na memória? Deixa eu ver... Tenho um processador de 3Ghz, 1 GB de RAM... Será que coloco mais um pente 1GB de RAM pra rodar esse programa?

Pra quem acha inútil tal conhecimento, saiba que eu já implementei sistemas usando essas informações e ganhei um excelente AUMENTO $$$.
Carregar, listar e buscar de uma lista de produtos contida em arquivo XML de 4 MBytes num Pocket PC com processador de 100Mhz. Busca instantânea!

vkMiau is offline   Reply With Quote
ZeroCarontE
Trooper
 

21-07-07, 03:29 #58
vkmiau, eu sei q nao conta como complexidade, mas como ambos tinham mesma complexidade, eu soh tava comparando essas coisas inuteis mesmo (e deixei claro no final q eram irrelevantes)..
e eh constante, ok, mas facilita analisar o algoritmo se vc considerar um volume de dados N e nao um numero neh, a nao ser pensar em um numero limite (700) pra ver se a complexidade esta apropriada..

e bone, eu nao estava perdendo tempo, eu estava matando tempo, como pode ver pelos horarios de post

ZeroCarontE is offline   Reply With Quote
Ted
Trooper
 

Gamertag: MassahudDS PSN ID: massahud Steam ID: massahud
21-07-07, 13:30 #59
Fim de carreira ficar discutindo que linguagem é melhor que outra. Ou talvez seja inicio de carreira, enquanto ainda esta fresco na sua cabeça os ensinamentos de alguns professores de que tudo que vem da M$ é mau e ruim.

Ted is offline   Reply With Quote
CORPI A LENDA
Trooper
 

21-07-07, 13:54 #60
nerds discutindo é mau e ruim

CORPI A LENDA is offline   Reply With Quote
Bombastic
The Alpha Male
 

21-07-07, 17:06 #61
Quote:
Postado por Ted
Fim de carreira ficar discutindo que linguagem é melhor que outra. Ou talvez seja inicio de carreira, enquanto ainda esta fresco na sua cabeça os ensinamentos de alguns professores de que tudo que vem da M$ é mau e ruim.
nao eh discucao de qual linguagem ou tecnologia eh melhor
esperava mais de vc ted...

cara, asp é pessimo ATÉ para aplicacoes que asp foi feito para ser bom...

existem outras linguagens/tecnologias melhores, mais baratas E mais faceis

esse é o fato


Last edited by Bombastic; 21-07-07 at 17:12..
Bombastic is offline   Reply With Quote
Alexandre
Trooper
 

21-07-07, 17:54 #62
é obvio que o algoritmo implementado pelo vkMiau apresenta complexidade O(700) = O(1)
simplesmente porque o algoritmo não apresenta generalidade na entrada. ele só lê listas de 700 alunos. nao há generalidade no tamanho da lista.

A analise de complexidade assintotica só faz sentido quando o tamanho da entrada varia (isto e', existe uma funçao não constante do espaço de entradas levando a valores na reta).

se o programa do vkMiau fosse generalizado (usando por exemplo, alocaçao dinamica pros vetores), teriamos uma funçao naturalmente induzida dada pelo número de elementos do vetor (isso é óbvio); e então chegariamos a conclusao que este programa generalizado apresenta complexidade O(n), onde n e' o numero de alunos inputados na entrada

é fácil ver que o problema proposto apresenta complexidade omega(n). (deixamos a cargo do leitor). portanto, o algoritmo generalizado (naturalmente induzido pelo programa generalizado) apresenta então otimalidade.

obs: o que vc disse nao é uma definiçao, e sim um lema (fraco e inutil). Uma versao mais forte e c/ a linguagem apropriada e':

Lema: Se um problema apresenta classe de complexidade assintotica omega(f(n)), e existe um algoritmo 'A' de complexidade O(f(n)), entao 'A' é (assintoticamente) otimo.

Alexandre is offline   Reply With Quote
Ted
Trooper
 

Gamertag: MassahudDS PSN ID: massahud Steam ID: massahud
21-07-07, 18:00 #63
Quote:
Postado por Bombastic
nao eh discucao de qual linguagem ou tecnologia eh melhor
esperava mais de vc ted...

cara, asp é pessimo ATÉ para aplicacoes que asp foi feito para ser bom...

existem outras linguagens/tecnologias melhores, mais baratas E mais faceis

esse é o fato
Sei lá, nunca aprendi ASP, mas mesmo assim acho inútil esse tipo de discussão. De .Net eu sei apenas C#.

O problema não é ASP ser pior ou melhor, o problema é a discussão em si ser inútil, pois vc pode achar uma outra linguagem mais fácil que ASP, mas para o outro ASP pode ser mais fácil. Se ele já tiver uma API boa para tudo que vai fazer em ASP, é bem mais facil usar ASP do que ter que aprender outra linguagem e ter que fazer uma API parecida com a que ele ja possui. Então pra ele ASP seria melhor.

Se fosse "qual a melhor linguagem para tratar o problema X" com várias linguagens diferentes com aplicações diferentes, seria uma discussão válida.

Mas uma discussão de qual a melhor linguagem para resolver problemas de um mesmo tipo entre linguagens feitas para resolver esse tipo de problema é besteira. Cada um pega a linguagem que achar melhor ou que gostar mais (ou desgostar menos).


Last edited by Ted; 21-07-07 at 18:13..
Ted is offline   Reply With Quote
rockafeller
Chief Rocka
 

21-07-07, 18:34 #64
 

rockafeller is offline   Reply With Quote
vkMiau
Trooper
 

21-07-07, 18:53 #65
Ok, talvez "Definição" não seja bem o termo.
Mas não acho inútil, pelo menos o professor que passou esse conhecimento não achava isso. Foi foda essa cadeira, se não me engano 16 reprovaram direto!

Toda linguagem de programação tem vantagens e desvantagens, mas qualquer coisa é melhor que BASIC e seus derivados.

Quer performance? C++
Quer flexibilidade? .Net
Quer portabilidade? Java
etc...

Quote:
Postado por CURRY A LENHA
nerds discutindo é mau e ruim
Ahã, concordo.


Teve uma pérola de orkut esses dias que rachei (não sei o profile). A mulher estava escrevendo e ela aperta o caps lock, algo assim:

"a gente saiu aquele dia E FOI BALA, SABIA? MUITO BOM! NÃO SEI O QUE ACONTECEU, ESTÁ SAINDO TUDO COM LETRA MAIÚSCULA. BJS."

HduashdHAsdAHSd

vkMiau is offline   Reply With Quote
Gerson
Trooper
 

21-07-07, 20:02 #66
Quote:
Postado por ZeroCaronte
entao eh totalmente irrelevante discutir qual tem melhor em performance, porem IMHO o codigo fica mais claro se for do jeito simples..
Discordo meu.
Quanto mais simplificado, pior a compreensão.
Diversas vezes eu faço código maior (que poderia ser simplificado), meramente pra ficar mais claro e lógico.
Da pra escrever um jogo da velha em C em duas páginas, mas se fizer em quatro pode ter certeza que fica muito mais claro o código.

Gerson is offline   Reply With Quote
ZeroCarontE
Trooper
 

21-07-07, 20:57 #67
vc tah zuando neh songer? auahauhauahua

Code:
simples
    que não é complicado;
    fácil de compreender;
    claro;
nao dah pra associar facilmente simplicidade com tamanho, pq algo complexo pode ser feito em menos linhas (ordenar eh mais complicado q iterar um array, por exemplo, porem pode ser uma instrução soh), mas se um codigo tiver instrucoes demais ele pode se tornar complicado
e se eh mais facil explicar o codigo A doq o codigo B, o A tem chance de ser mais simples tb

inclusive nessa frase q vc quotou, o jeito simples q eu disse era "ler, achar menor, procurar menores", invez de "enquanto le vai guardando os menores, e se encontrar menor ainda, limpa os guardados, depois mostra qm tah guardado"

ZeroCarontE is offline   Reply With Quote
Gerson
Trooper
 

22-07-07, 01:27 #68
ZeroCaronte, veja o tamanho de uma lógica perfeitamente inteligível.

a lógica mais correta pra ser entendido o programa é a seguinte, em C puro, pra nao entrar em OO;

#include ...

void leAlunos(char *meusAlunos, int *seusNumeros);
void veMenorIdade(char *meusAlunos, int *seusNumeros);
void mostraMenores(char *meusAlunos, int *seusNumeros);

int main()
{
int osNumeros[700];
char osAlunos[700][50];

leAlunos(&osAlunos[0], &osNumeros[0]);
veMenorIdade(&osAlunos[0], &osNumeros[0]);
mostraMenores(&osAlunos[0], &osNumeros[0]);

}

Tu faz cada função do programa separadamente, um código mto maior e menos eficiente, porém, muito mais fácil de ser compreendido.
:P

Gerson is offline   Reply With Quote
Oni
Trooper
 

22-07-07, 01:31 #69
O importante não é achar a melhor linguagem pra resolver os problemas..
O importante é encontrar a linguagem que pode te dar mais $$$

Oni is offline   Reply With Quote
tdf
 

Steam ID: tdf
22-07-07, 02:18 #70
Programadores...
ehaehauh

tdf is offline   Reply With Quote
un4
inativo
 

22-07-07, 02:23 #71
simplificado é menos legível?

Code:
class Aluno
  attr_accessor :nome, :idade
 
  def initialize(nome, idade)
    @nome = nome
    @idade = idade
  end

  def <=>(aluno)
    @idade <=> aluno.idade
  end
  
  def ==(aluno)
    @idade == aluno.idade
  end

  def to_s
    @nome
  end
end

alunos = []

alunos << Aluno.new("Joao", 12)
alunos << Aluno.new("Jose", 13)
alunos << Aluno.new("Maricotinha", 12)

#Idade minima
puts alunos.min.idade

#nome dos alunos com idade minima
puts alunos.grep(alunos.min)
fear ruby! ;D


Last edited by un4; 22-07-07 at 02:29..
un4 is offline   Reply With Quote
midn
Trooper
 

PSN ID: midnBR Steam ID: paolobacci
22-07-07, 03:19 #72
Nao li todos os codigos, mas o do jeep apresentado no 1o reply atende a ocasiao.. soh trocaria o idade_minima de 1000 pela idade do 1o cara do vetor, dai faca as comparacoes e atualize....Fica mais limpo

inte

midn is offline   Reply With Quote
dos Pampas
Trooper
 

22-07-07, 04:58 #73
tem alguem na mesma situação que eu?? os caras ai estão falando grego heheheh.. POUTS! manjo nada disso.

dos Pampas is offline   Reply With Quote
Bombastic
The Alpha Male
 

22-07-07, 12:45 #74
Quote:
Postado por vkMiau

Toda linguagem de programação tem vantagens e desvantagens, mas qualquer coisa é melhor que BASIC e seus derivados.

Quer performance? C++
Quer flexibilidade? .Net
Quer portabilidade? Java
etc...
como assim .Net flexibilidade? pode explicar melhor?

Quote:
Postado por un4

fear ruby! ;D
RoR eh foda se, somente si não for para ser utilizado em uma fabrica de software

precisa-se de muita responsabilidade de quem esta utilizando

Bombastic is offline   Reply With Quote
ZeroCarontE
Trooper
 

22-07-07, 13:20 #75
songer.. MAS O ALGORITMO EH O MESMO aUhauahauAHuA
nao esta sendo discutido paradigma de programação, soh algoritmo
nao importa se vc vai por metodos, objetos ou qq outra coisa pra fatorar o codigo
a eficiencia tah no algoritmo

a nao ser q vc soh tenha mudado de assunto, dae ok
eu nao acho q o mais simples seria fazer um metodo separado pra cada coisa, a nao ser que o codigo q precise deles (no caso, o "main") nao fique simples se nao tiver essa separação.. por exemplo, se tivesse um sort ali no meio, entao q seja em outro metodo.. se a entrada vem de um servidor web e tem negociaçao de protocolo, entao q seja em outro modulo do sistema, senao mistura td e deixa de ser simples
ou entao qd o codigo aparece em outro lugar, dae ok tb, pra remover duplicação
agora nesse caso: iteração pra ler entrada padrao, iteração pra buscar o menor, iteração pra imprimir os iguais, IMHO esta simples o suficiente e qq coisa q mude soh vai complicar..

PS: nao entendi pq o array de tamanho [700][50] e oq significa akele osNumeros sendo passado pra td mundo, mas deixa pra la

ZeroCarontE is offline   Reply With Quote
Responder


Regras de postagem
Você não pode criar novos tópicos
Você não pode postar
Você não pode enviar anexos
Você não pode editar seus posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Atalho para Fóruns



O formato de hora é GMT -3. horário: 06:21.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.