-
Posts
1.543 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Fabricantes
Livros
Cursos
Análises
Fórum
posts postados por isrnick
-
-
@arfneto Eu penso na bolha de sabão e a direção muda dependendo do gás que põe dentro.
E quem deu o nome foram os americanos que usam bolha (Bubble) cotidianamente para indicar isolamento, tem até uma expressão "living in a bubble" (vive numa bolha) para indicar alguém vivendo fora da realidade.
- 1
- 1
-
@arfneto Uma bolha não necessariamente flutua para cima, bolhas também podem afundar, depende da diferença de densidade entre os 2 fluidos.
A característica que define a existência de uma bolha é a separação/isolamento dos fluidos, ou seja o fato deles não se misturarem, e não importa a direção que se move ou se fica estática.
- 2
-
@henriquex14 Crie um novo tópico com sua dúvida, e poste sua tentativa ou dúvidas para podermos te ajudar. (Você postou aqui e ressuscitou um tópico de 2009.)
-
2 horas atrás, arfneto disse:
Foi nesse tópico que falei aqui desse lance âncora/bolha que eu não consigo aceitar!
Tem mais de um jeito de interpretar o nome Bubble Sort . Pode considerar que os elementos maiores vão flutuando para o fim da lista a cada ciclo do loop.
Ou também dá para considerar o fato de que somente 1 par de elementos adjacentes é considerada a cada operação de ordenação, ignorando o restante da lista, com se houvesse uma bolha isolando/destacando os 2 elementos adjacentes do resto da lista. Esse GIF até ilustra a suposta "bolha" em vermelho:
- 1
-
Não é complicado, como sempre na programação faça por partes, e vá testando o programa a cada adição/alteração que fizer.
Primeiro crie um vetor de 20 posições, e faça o código do loop que pede 20 vezes para o usuário digitar um valor e vai preenchendo o vetor.
Faz o loop para imprimir os 20 valores do vetor.
Depois faça a parte que usa um algoritmo de ordenação para ordenar os valores no vetor, basta pesquisar e vai achar vários algoritmos de ordenação, um algoritmo bem simples e muito usado por iniciantes é o Bubble Sort (ordenação por flutuação).
E faz o loop para imprimir os 20 valores do vetor que devem estar ordenados.
Se tiver problemas poste sua tentativa ou dúvidas para podermos ajudar.
- 1
-
3 minutos atrás, Mauro Britivaldo disse:
Para testa se na memória reservada há espaço para mais um elemento.
Essa função não indica se tem espaço para mais um elemento, ela só indica se está vazia, a função para checar se tem espaço é a que checa se está cheia.
Na verdade ela seria usada quando estiver removendo elementos da lista, para indicar se ainda tem elementos para serem removidos.
(E quando lista é NULL não tem items para serem removidos. hahahaha )
-
@Mauro Britivaldo Não há dúvidas, o -1 na função do professor é para indicar VERDADEIRO.
Afinal se fosse para indicar um erro então no escopo que chamou a função, teria que pegar o retorno da função e fazer um if else if para verificar se retornou -1, 0 ou 1, e se vai ter que fazer isso para que a função foi criada? Nesse caso seria melhor não usar a função e testar direto no escopo original se é NULL e se está vazia.
A única vantagem dessa função é possibilitar fazer isso:
if( lista_vazia(lista) ){ //faz algo }
Então só tem uma possibilidade o -1 é para indicar VERDADEIRO.
- 1
-
Aliás a título de curiosidade o argumento para usar -1 ao invés de 1 para indicar quando é VERDADEIRO é por causa da forma binária.
-1 fica como ..111111111 (todos os bits igual 1) na forma binária.
Enquanto 1 fica como ..00000001 (só 1 bit fica igual a 1).
E o 0 obviamente é ..0000000 (todos os bits iguais a 0).
Então dá para dizer que -1 é o total oposto de 0 na forma binária, enquanto o 1 só é diferente em 1 bit do 0. Logo, -1 representa melhor o estado oposto de 0 == FALSO.
Tem até uma discussão de que usando -1 teria menos risco de uma falha na memória mudar o estado de VERDADEIRO para FALSO e vice-versa, e gerar resultados oposto ao esperado na execução do programa, pois seria necessário que a falha invertesse todos os bits para transformar um -1 em um 0 e vice-versa.
- 1
-
Não é que está em direção ao centro, é que todos os valores são diferentes (não tem repetidos), e todos os valores estão inclusos no intervalo (não pula nenhum número entre o maior e o menor número), e a altura de cada ponto indica qual é maior, então acaba que o maior fica no canto superior direito e o menor no canto inferior esquerdo, com todos os outros em ordem crescente no meio (ou seja estão ordenados), o que acaba formando uma reta na diagonal.
- 1
- 1
-
2 minutos atrás, Brendo Washingtonn disse:
@isrnick até parece mais fácil !
sempre seria s? ou trocaria a variavel?
s é o nome que eu dei para essa variável, você pode usar qualquer outro nome.
string banana;
- 1
-
@Mauro Britivaldo não, esse -1 aí não é para gerar exceção, é para retornar TRUE/VERDADEIRO. O retorno dessa função é para ser usada em um if desse tipo:
if( lista_vazia(lista) ){ //faz algo }
Logo, retornar -1 é o mesmo que retornar que a lista está vazia.
-
7 minutos atrás, Brendo Washingtonn disse:
ah, acho que por enquanto ainda é muito avançado para mim ,minha professora ainda não nos instruiu quanto a isso
Não é complicado, seria algo parecido com isso:
#include <iostream> #include <string> using namespace std; int main() { int qtdSim = 0; string s; cout<<"Telefonou para a vitima? "; cin>>s; if(s == "Sim" || s == "sim" || s == "SIM"){ qtdSim = qtdSim + 1; } cout<<"voce esteve no local do crime? "; cin>>s; if(s == "Sim" || s == "sim" || s == "SIM"){ qtdSim = qtdSim + 1; } cout<<qtdSim<<endl; return 0; }
Observe que s não é um int mas sim uma string.
- 1
- 1
-
@Mauro Britivaldo É que nesse tópico ficou confuso porque a informação está espalhada em vários posts, mas tem outro tópico de outra pessoa com a mesma questão, que o mesmo código é fornecido:
Eles tem até o mesmo professor, devem ser da mesma turma.
-
@Brendo Washingtonn O fórum está aqui para tirar dúvidas, não tem nada de causar aborrecimento, pode continuar perguntando até tirar todas que tiver.
E sim, existe.
Teria que armazenar a resposta do usuário em um objeto da classe string, testar se a resposta é igual a "sim", e aí somar 1 no contador se for igual.
- 1
- 1
-
@Mauro Britivaldo De qualquer maneira nesse caso não é responsabilidade do aluno, essas funções de checagem já foram fornecidas (presumidamente pelo professor) e a única coisa que é pedido para o aluno fazer é a função para inserir no fim da lista.
-
5 minutos atrás, Brendo Washingtonn disse:
então em geral, não é necessário o uso de "{}" ou se for usar, colocar em tudo?
Só pode deixar sem { } quando dentro do bloco só tem 1 única linha de comando, se tiver mais de 1 é obrigatório colocar o { }.
if (a == b) { c = 4 * d; } //é igual a: if (a == b) c = 4 * d; //e também: if (a == b) c = 4 * d;
Mas não pode fazer neste caso:
if (a == b) { c = 4 * d; d++; }
Pois:
if (a == b) c = 4 * d; d++; //na verdade é igual a: if (a == b) { c = 4 * d; } d++; //Que faz algo bem diferente do original
Algumas pessoas até preferem sempre colocar { } em todos os casos só manter a consistência, mas aí é uma questão de preferência.
- 1
-
@arfneto Esse GIF que postei é da Wikipedia (aliás só peguei o endereço da imagem e postei aqui, se olhar os detalhes da imagem vai ver que a URL é da Wikipedia), mas é da versão em inglês do artigo sobre o Bubble Sort (que aliás é sempre muito mais completa que a versão em português).
https://en.wikipedia.org/wiki/Bubble_sort
E segue link Wikipedia do seu GIF bonitinho também:
-
6 minutos atrás, Brendo Washingtonn disse:
mas, nesse caso ele não acusaria qualquer numero abaixo de 4 como cúmplice também?
adicionado 0 minutos depoismesmo 2, que seria Suspeito?
Não pois ele só testaria esse if se os ifs anteriores foram ambos falsos, é exatamente para isso que serve o else (=senão) que tem no else if, então já testou que qtdSim não é <= 1 nem ==2, logo só vai entrar nesse if se for 3 ou 4.
- 1
- 1
-
9 minutos atrás, Simon Viegas disse:
Apenas faltou o 3!!! Exemplo:
if (qtdSim <= 1){ cout<<"Inocente "; } else if ((qtdSim == 2) || (qtdSim == 3)){ cout<<"Suspeito "; } else if (qtdSim <= 4){ cout<<"Cumplice "; } else { cout<<"Assassino "; }
Não faltou não, meu código já considera o 3, segundo o enunciado para 3 ou 4 ele é Cúmplice, que é o que meu código faz.
- 1
- 1
-
if (qtdSim <= 1){ cout<<"Inocente "; } else if (qtdSim == 2){ cout<<"Suspeito "; } else if (qtdSim <= 4){ cout<<"Cumplice "; } else { cout<<"Assassino "; }
- 3
-
Gif do Bubble Sort:
11 minutos atrás, arfneto disse:Não é necessário: só há dois critérios e poderia ser um único bit: 0 para COD e 1 para nome por exemplo.
Sim, tecnicamente é desnecessário, mas o exemplo de entradas usa o texto "cod" ao invés de um número.
(Principalmente se a resposta for testada por um programa ao invés do professor, qualquer mudança é considerada um erro pelo programa.)
- 1
-
Bubble Sort é bem simples, você percorre a lista várias vezes do começo até a penúltima, e compara o item atual da lista com o próximo, se o próximo for menor que o atual então deve trocar os items de posição, assim os menores vão sendo movidos para o começo da lista, para uma lista com N items percorre a lista inteira N-1 vezes fazendo trocas e vai obter a lista ordenada, ou então pode parar de percorrer se percorrer a lista inteira uma vez sem fazer nenhuma troca.
- 1
-
Tem sérios problemas de recursão descontrolada no código, seu programa chama as funções mas nunca finaliza e retorna delas, pois ao invés de usar return ou deixar chegar ao fim do código da função (quando a função é void) você faz uma chamada para uma nova instancia da função do nível anterior.
Veja um exemplo do que seu programa pode fazer ao chamar novamente as funções (ao invés de retornar):
main -> Menu -> Gamemode -> VersusCOM -> GameMode -> Menu -> GameMode -> VersusHuman
Observe que toda vez você chama a função e então no exemplo acima tem 3 funções Gamemode carregadas, 2 Menu, e 1 VersusCom carregados na memória, incluindo as variáveis criadas nelas que não está mais usando, enquanto está jogando no VersusHuman.
- 2
-
- 1
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
Problema em c juntar listas e mais
em C/C#/C++
Postado
@Matheus Maldi
Você não considerou o último comando da imagem da entrada onde está escrito "cod" esse comando serve para dizer que deve ordenar pelo código (idade no seu caso), alternativamente ao invés de "cod" poderia escolher digitar "nome" e nesse caso indicaria para o programa ordenar por nome.
Leia o enunciado completo postado pela Julia Leite:
Note também que cod é um identificador único, então não terá 2 cods iguais (o que não é o caso de idade).