Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.

Simon Viegas

Moderadores
  • Total de itens

    3.137
  • Registro em

  • Última visita

  • Qualificações

    0%

Reputação

1.284

Sobre Simon Viegas

  • Data de Nascimento 22-06-1982 (35 anos)

Informações gerais

  • Cidade e Estado
    Salvador/BA
  • Sexo
    Masculino

Outros

  • Biografia
    Carregando...
  • Ocupação
    Técnico e Analista de Sistemas
  • Interesses
    Tecnologia
  1. Caro usuário, Seja bem-vindo ao Fórum do Clube do Hardware. No intuito de servir como fonte de pesquisa no caso de instituições de ensino, informamos que incorrer no resolvimento por completo de questões relacionadas a disciplinas escolares de cursos técnicos e faculdades podem ser revistas e removidas pela Equipe de Moderação do Clube do Hardware. Para sanar dúvidas sobre esse tipo de problema, por gentileza, publique o passo a passo do desenvolvimento da questão, projeto, monografia ou conteúdo em dúvida para que possamos analisar se a resposta está correta ou não, ou para que possa ser auxiliado com a dúvida no desenvolvimento do exercício. Infelizmente, não há como resolver os trabalhos pelos usuários. O objetivo do Fórum do Clube do Hardware é auxiliar seus usuários a encontrar soluções para que possam sanar suas dúvidas, e não de trazer soluções prontas para seus usuários.. Além disso, copiar e colar respostas que não são de autoria própria do qualquer usuário é considerado plágio, o que é ilegal. Esperamos que compreenda. Atenciosamente, Equipe Clube do Hardware
  2. @BatimadosHue, sobre: Eu acho que seria isso mesmo... Daí, tente implementar isso no C#. Solicita os dados, calcula e exibe o resultado.
  3. É. E não é. Esses bytes foi você que calculou? ou aparece nos "propriedades do arquivo" no Windows? Eu preciso que faça isso: Vocês precisam, através dos dados informados, responder quantos bytes o filme tem. Entende? obs.: no Windows, as informações do bytes não são feitos por esses cálculos... o Windows não está nem ai para as características dos filmes... apenas sabe que ele ocupada X bytes lá no HD (pois é o que o arquivo ocupa). Já no problema proposto, ele quer saber quanto corresponderia o armazenamento dessa imagens... ou seja, seria uma cálculo manual... Fazendo uma analogia, seria como calcular o peso de um bolo... uma coisa é você pegar e colocar o bolo na balança (assim como o Windows apenas verifica o que ocupa no HD), outra coisa é você contabilizar quanto pesa a farinha, mais quanto pesa o ovo, mais quanto pesa o leite etc etc e daí retornar o seu peso final (o valor vai dar igual)... o problema quer isso...!!! O enunciado já explica como como calcular o total do filme... Resumindo: Tendo os dados do filme que eu passei, quantos bytes ele vai ocupar? Demonstrem a conta e o resultado. ADENDO: Perceba que um filme não é composto somente de imagens... existem outros dados... no escopo do enunciado, ele que saber apenas quantos byte são necessários para essas imagens... ou seja, "as imagens daquele filme por si só ocupam X bytes".
  4. Olá @Guyll. Seja bem vindo ao Fórum do Clube do Hardware. @Guyll, perceba que você apenas postou uma enunciado e uma imagem... mas qual é a sua dúvida? é no entendimento do problema, ou seja, na interpretação do texto; ou nas operações matemáticas envolvidas; ou caso já entenda o problema, tem alguma dificuldade na implementação em C#? @BatimadosHue, sobre: Idem para ti... sua dúvida é na interpretação do problema ou na implementação na linguagem escolhida? Vejam, a dica é simples... Tentem resolver essa conta no papel... esqueçam que existem uma linguagem de programação e computadores... a depender, pode usar uma calculadora!!! O C# (ou qualquer outra linguagem de programação) vão servi apenas para automatizar esse processo, ou seja, para resolver esse problema, vocês precisam criar um algoritmo... quer seria basicamente "as etapas necessárias para resolver o problema"... sei lá, algo como: Se o enunciado é algo assim: - pego as dimensões da imagem; - pego o tempo do fime; - pego o número de frames por segundo; - multiplico tudo pi, tiro a raiz cúbica do resultado, depois faço a prova dos 9.... etc Obs.: essas etapas foram INVENTADAS, apenas para demonstrar. RESUMINDO: Existem 2 questão importantes e DISTINTAS: - OU você tenta entender o problema que foi proposto (ou seja, seja capaz de resolver no papel); - OU você tenta implementar o que previamente entendeu do problema em uma linguagem de programação. O que não dá é tentar fazer as duas coisas ao mesmo tempo. Logo, sugiro que tem resolver isso no papel!!! Por exemplo: A dimensão da imagem é 800x600; O tempo de filme é de 1h30; O número de frames por segundo é de 24. Qual é o tamanho desse filme em bytes? Postem o cálculos e resultados aqui... Só depois, tentamos implementar isso numa linguagem... ai suas dúvidas seriam APENAS na sintaxe (regras) do C#. Entendem? Ou se preferirem, ESCOLHA OUTRO PROBLEMA QUE JÁ DOMINEM, E IMPLEMENTEM NO C#. Reforçando: OU tiramos a dúvida sobre o problema OU tiramos a dúvida sobre o C#. No aguardo.
  5. Olá. Vou tentar resumir os pontos. 1# A primeira coisa a se entender é o enunciado: Ou seja, primeiro se entende o que se tem que fazer, para só depois tenta fazer... certo? Então, o que significa a expressão "entre X e Y"? O números são inclusos? ou seja, o 50 e o 100 entram na conta? cada situação leva a uma lógica um pouco diferente! No seu código inicial, você está incluindo-os. Já que usou "i=50 até i=100". Eles estão entrando na conta. Já na resposta, dá a entender que não entram... Pois 50 e 100 não apareceram (e estes são múltiplos de 5). Então, vamos partir do pressuposto que não entram (eu não sei qual o correto, é necessário você analisar. Vou me basear pela sua resposta). E que você está tentando verificar número por número, e apenas exibindo os que são múltiplos de 5. 2# Sobre o código em si, baseado que "quer verificar um a um", temos: 2.1 Segundo consta, "entre 50 e 100" é o mesmo que "maior que 50, e menor que 100", correto? (sem o "=") Percebe que essa UMA FORMA DE FAZER (pois podem existir infinitas formas), ou seja, verificando um a um, poderia deixar o for com algo assim: for (int i=50+1; i<100; i++) { Com o próximo número após o "limite inicial" (que ele não está incluso), até o primeiro número antes do "limite final" (já que ele não está incluso também). E o i sendo incrementado de 1 em 1.... (vai verificar 51, 52, 53... 97, 98 e 99). Outra forma, que daria no mesmo, seria assim: for (int i=50+1; i<=100-1; i++) { Obs.: O o código do @giu_d: ...já começa do 55. Mas como sabe que 51, 52, 53 e 54 não são múltiplos de 5? Resumindo: esse código pode até exibir a resposta correta, mas não estará de acordo com a SUPOSTA intenção de verificar um a um, ou seja, o código pode está certo, mas para uma outra lógica, que não essa que estou SUPONDO que foi a sua intenção. 2.2 O outro ponto é a verificação da condição em si. No seu código, parece que você tentou colocar dentro da própria "assinatura do for": Então, eu não manjo muito de C/C++, mas entendo que essa estrutura funciona assim: for (<valor inicial da variável>; <condição de parada>,<comando executado após cada loop>). Logo, no seu código, seria que ao final de cada loop, o i seria igual ao resultado da operação "i%5==0" (como tem um operador lógico, vai resultar em 1 ou 0 no C/C++... no Pascal, algo do tipo resultaria em TRUE ou FALSE, ou VERDADEIRO ou FALSO, no Visualg... etc). Vamos supor o seguinte código: #include <stdio.h> int main(){ for(int i=50 ; i<=100 ; i = i%5==0) { printf(" %d",i); } } Se executar o código acima, vai aparece da tela: 50 1 0 1 0 1 0 1 0 1 0 1.... infinitamente (o 1 e 0 se repetindo). Pois: - inicialmente vai exibir o 50. - ai ao final do loop, i vai ser igual ao resultado de "50%5==0", que dá 1. Logo, exibe o número 1; - ao final do loop, i vai ser igual ao resultado de "1%5==0", que dá 0. Logo, exibe o 0; - ao final do loop, i vai ser igual ao resultado de "0%5==0", que dá 1. Logo, exibe o 1; - ao final do loop, i vai ser igual ao resultado de "1%5==0", que dá 0. Logo, exibe o 0; isso, "infinitamente"... Como a execução é muito rápida, a pessoa que ver a tela vai apenas dizer "apenas aparece um monte de 0 e 1"... mas tecnicamente essa afirmação estará incorreta!!! (se fosse uma prova, a resposta seria que aparecem 3 números) Pois apareceu um 50 ali no início (apesar que possivelmente o usuário não ter tempo de ter visto). Resumindo: a verificação não fica na parte da definição do for (ou pelo menos não desta forma), no caso deveria ficar dentro do for, como já demonstrando em outras respostas. 3# Só para REFORÇAR A IMPORTÂNCIA DO ENTENDIMENTO DO PROBLEMA (análise do enunciado, e contexto); Veja o que diz: - Se o objetivo é verificar se cada um dos números entre 50 e 100 é múltiplo de 5, acho que poderia ficar assim: #include <stdio.h> int main() { for (int i=50+1; i<=100-2; i++) { if (i % 5 == 0) printf(" %d",i); } } -Se objetivo é apenas exibir o resultado (se for interpretar literalmente o enunciado), uma outra forma seria como @devair1010 sugeriu: Ou como @giu_d sugeriu: Agora perceba (com voz do Rafael Procópio): - Ainda nesse apenas exibir o resultado poderia ser, inclusive, assim: #include <stdio.h> int main() { printf("55 60 65 70 75 80 85 90 95"); } Em nenhum momento foi solicitado que é para "calcular ou verificar um a um". Logo, pode apenas exibir a resposta e pronto. Problema resolvido com sucesso. Maaaas, além do enunciado, deve EXISTER UM CONTEXTO, ou seja, faz mais sentido que o objetivo do exercício de fato seja verificar um a um (começar do 51, e não do 55)... uma mistura de treinamento do uso do FOR, com o uso de IF, com o uso do operador %. Concordam?
  6. Olá. @Malver Arkan, sobre: Então, tudo depende da necessidade, ou seja, para que seria esse U$? Se for apenas para exibir na hora de responder, basta seguir algumas das orientações já apresentadas. obs.: se estiver se referindo ao Dólar, creio que o correto seria US$. Percebe que o U$ não pertence ao número... assim como se estivesse trabalhando por exemplo com Quilômetros, não precisaria usar o KM no número em si. A unidade de medida fica separada. Sobre: Tem que tomar cuidado na representação.. tecnicamente 40+50 = 90, esse U$ (ou US$) não entra na conta! Para "resultar" em U$ no final, teria que ser algo assim: Exemplo: "U$40+U$50 = U$90" Entende? ou teria alguma outra operação entre unidades, que por sua vez resultaria em U$. A unidade de medida não deveria surgir do nada... Tipo, ao solicitar o "valor por hora", teria que especificar em qual moeda... algo como: cout << "Informe o valor por hora (em U$): "; cin >> valorhora; Ou seja, esse valor está em Dólar (o que o que seja), daí o resultado também será em Dólar (ou será em alguma outra unidade de medida que resultou de alguma operação) Resumindo: o U$ ficaria no texto, não no número. No aguardo.
  7. Sobre: Vide enunciado: Eu entendi que é necessário exibir o valor a ser pago por item... mas se não precisa, ok. Sobre: Bacana.. tente ajustar o código da melhor forma possível...
  8. Olá. 1# Sobre: O link não funcionou aqui. Está retornando: Por favor, além do link correto, poste também o código na forma de texto (com a tag CODE). 2# Lá testei o código "Cardápio lanchonete(final)", nesta ainda está com alguns probleminhas: - O "valor a ser pago por item (preco*quantidade)" não está sendo exibido (isso é exigido pelo enunciado); - Assim como em dinheiro, ao pagar em débito ou crédito, talvez seja melhor também receber o valor que está sendo pago; - Se pagar em dinheiro um valor menor que a conta, o troco fica negativo. Nesse caso, deveria receber outro pagamento até completar o valor total. *** No aguardo. adicionado 22 minutos depois ADENDO:
  9. Sugiro que vá logo pro Visualg... o Visual também "é um bloco de notas", a diferença que pode fazer rodar!!! No caso, implemente a exibição dos dados... algo como deixar assim: Ou seja, primeiro leu os dados, depois, apenas exibiu eles na tela. No aguardo.
  10. Bacana... já é um progresso!!! Sobre o "Portugol", vocês utilizam alguma ferramenta para "compilar/rodar", como o Visualg ou Portugol Studio etc, ou é feito no "papel" mesmo"? adicionado 10 minutos depois Faltou também responder: adicionado 21 minutos depois Abaixo ajustei o código para fazer a leitura de uma pessoa, segue: algoritmo "ENTREVISTA" var //DADOS DO ENTREVISTADO nome :caractere idade :caractere sexo :caractere qtdDeFilhos :inteiro //obs.: variáveis não podem ter espaços!!! rendaFamiliar:real inicio escreval("INFORMA OS DADOS DO ENTREVISTADO") //OBSERVAÇÃO: perceba que "escreve na tela" e "ler um dado do teclado" são // etapas distintas escreva ("Nome : ") leia(nome) escreva ("Idade : ") leia(idade) escreva ("Sexo (M ou F) : ") leia(sexo) escreva ("Qdt. de filhos : ") leia(qtdDeFilhos) escreva ("Renda familiar : R$ ") leia(rendaFamiliar) fimAlgoritmo { Para esta atividade MAPA queremos que você exercite o conteúdo que está sendo apresentado na disciplina. Sendo assim: Escreva um algoritmo que faça a entrevista de 20 pessoas. Seu algoritmo em Portugol deve conter os seguintes requisitos: I. Realizar a leitura dos seguintes dados, para cada uma das 20 pessoas: - Nome. - Idade. - Sexo. - Quantidade de filhos. - Renda mensal familiar. Obs.: Sair do laço de repetição se um nome não for preenchido, mesmo se não atingir 20 pessoas. II. Com base nos dados coletados, apresente na tela as seguintes informações: - Percentual de mulheres e homens. - Número de pessoas com renda familiar de 500.00 (quinhentos reais) ou acima. - Percentual de pessoas que tem ao menos 1 filho. - Número de pessoas que nasceram a partir do ano 2000. } Nesse caso, a sintaxe está voltada para o Visualg... mas a "base é mesma"... a depender, fazer alguns ajustes para o "programa" usado, ou das características do Portugol que está estudando. adicionado 24 minutos depois Perceba que inicialmente só está tendo ler os dados de uma pessoa... para testar se está funcionando, poderia exibi-los. Desta forma, sugiro que pegue esse código e insira um trecho para apenas exibir os dados, ou seja, a parte de ler os dados já está meio que pronta, ai, faria exibir esses dados na tela para ver se leu certo ou não... Só depois, mais pra vemos, damos continuidade. No aguardo.
  11. @isrnick, essas estruturas abaixo são análogas? p = &vetor1[2]; p = vetor1; p++; p++;
  12. Olá @allanalencar. Quais os assuntos que já estou? já estudou vetores? Por favor, poste o que já conseguiu fazer e onde está com dúvidas. No aguardo.
  13. Sobre: Não. O enunciado explica: Você precisa do "dobro de cada elemento de um vetorA". Para ver ter o dobro de algo, primeiro precisa ter o algo! Basta inicialmente ler o vetorA. Tendo o vetorA preenchido, gera o vetorB. Após exibi o vetorB. Resumindo: adicionado 0 minutos depois *exibe
  14. Olá. 1# @hwayoung, sempre mantenha o código indentado. É se uma importância. Ex.: #include <stdio.h> int main() { int i, vetorA[4],vetorB[4]; for (i=0; i<=4; i++) { printf("\n digite um numero[%d]",i); scanf(" %d", &vetorA); } for (i=0; i<=4; i++) { vetorB=vetorA*2; printf("\n resultdo= %d >> %d \n",i,vetorB); } return 0; } 2# Sobre o "tamanho do vetor". Só para complementar: Quando se declara um vetor, aquele valor entre os "[]" está definido o seu tamanho, ou seja, a quantidade de posição. Se quer 5 posições, usa 5 mesmo. Já na hora de acessar é um pouco diferente, se o vetor tem N posições, seu índice será definido indo de 0 a N-1. Daí usa de 0 a 4 (0, 1, 2, 3 e 4), totalizando as 5 posições. Sobre o citado por @Escanor: Então, usar "<" ou "<=" depende do valor usado no parâmetro. Por exemplo, se o vetor tem 5 posição, seu índice vai de 0 a 4, correto? Se usar "de 0 a <=5" o programa vai tentar acessar as posições 0, 1, 2, 3, 4 e 5!!! Mas a posição 5 não existe!!! O que pode dar erro (bug) e travar o programa ou exibir dados errados etc. obs.: independente do programa rodar sem erros ou não, isso seria um erro de lógica, ou seja, perceba que funcionar não quer dizer que está certo. Então, tecnicamente o programa não vai ficar num loop infinito, pois iria executar os seus 6 loops e finalizar, o problema central está no fato que a posição 5 não existe (como dito, só vai de 0 a 4). RESUMINDO: ou usar "<5" ou usa "<=4". É mais comum a primeira opção.. pois fica mais sugestível o tamanho real do vetor. 3# Sobre o enunciado: Eu sugiro fazer assim: - ler o vetorA; - gera o vetorB; - imprime o vetorB. Nesta ordem... Perceba que no seu código você está gerando o vetor e já exibindo... acho que seria melhor separar... primeiro gera tudo, depois exibe tudo. *** No aguardo.
  15. @Fabio Junior Tic,por favor, poste o código completo. obs.: para postar códigos, favor ler o tópico abaixo: Poste seus códigos corretamente!

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×