
AdrianoSiqueira
Membro Pleno-
Posts
1.273 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Livros
Cursos
Análises
Fórum
Tudo que AdrianoSiqueira postou
-
Java Como passar vetor de objetos como paramentro
AdrianoSiqueira respondeu ao tópico de Patrickwilker0 em Java/Android SDK
Segue um exemplo funcional: public class Principal { public static void main(String[] args){ String[] palavras = new String[5]; palavras[0] = "AAA"; palavras[1] = "BBB"; palavras[2] = "CCC"; palavras[3] = "DDD"; palavras[4] = "EEE"; funcao(palavras); } public static void funcao(String[] vetor){ for(String palavra : vetor) { System.out.println(palavra); } } } -
Erro na instalação do Windows 8.1
AdrianoSiqueira respondeu ao tópico de Houlz em Versões até Windows 8
Se você não tiver acesso a outro computador, então não tem jeito mesmo. Uma assistência vai cobrar em torno de R$ 80 (pelo menos na minha cidade). -
Erro na instalação do Windows 8.1
AdrianoSiqueira respondeu ao tópico de Houlz em Versões até Windows 8
Vai na casa de um amigo e usa o PC dele para gravar um novo pendrive bootável. -
Java Como pegar dado digitado em um jTextField?
AdrianoSiqueira respondeu ao tópico de jHONFK em Java/Android SDK
Para pegar o conteúdo do JTextField faça assim: JTextField field = new JTextField(); String conteudo = field.getText(); -
Java Conexao com o Banco - Error
AdrianoSiqueira respondeu ao tópico de Cortella em Java/Android SDK
Qual a versão do java que você está usando? -
C Elabore um programa em C que leia 5000 números.
AdrianoSiqueira respondeu ao tópico de Isadora Maciel em C/C#/C++
#include <stdio.h> #include <stdlib.h> int main() { const int TOTAL = 10; int entrada = 0; int quantidadeMultiplos = 0; double percentual = 0.0; for (int i = 0; i < TOTAL; ++i) { printf("%iº valor: ", (i + 1)); scanf(" %i", &entrada); if (entrada % 5 == 0) { quantidadeMultiplos += 1; printf("(^ ^) É múltiplo. \n"); } else { printf("(> <) Não é múltiplo. \n"); } printf("\n"); } percentual = quantidadeMultiplos * 100.0 / TOTAL; printf("----------------------------------- \n"); printf(" Total: %i \n", TOTAL); printf(" Múltiplos: %i \n", quantidadeMultiplos); printf("Percentual: %.2lf%% \n", percentual); printf("----------------------------------- \n"); return 0; } -
Java Eclipse error: “The import XXX cannot be resolved”
AdrianoSiqueira respondeu ao tópico de Hela em Java/Android SDK
Até onde eu sei não. Inclusive existem situações que se você não fizer dessa forma, o algoritmo não funciona corretamente. Se você tem dificuldades com esse tipo de sintaxe, essa modificação funciona também: private static int verificarVencedor(int jogador, int computador){ if (jogador == computador) { return 0; } if (jogador == 1) { return (computador == 2) ? 2 : 1; } if (jogador == 2) { return (computador == 3) ? 2 : 1; } return (computador == 1) ? 2 : 1; } Pessoalmente não gosto dessa sintaxe, pois a função fica com muitos pontos de escape (return), dependendo da situação isso pode dificultar a depuração do código. -
Java Eclipse error: “The import XXX cannot be resolved”
AdrianoSiqueira respondeu ao tópico de Hela em Java/Android SDK
@Hela, seu código está com alguns erros de sintaxe, além de algumas chaves "dando sopa no final". Reorganizando seu código, uma possível solução seria assim: import java.util.Scanner; import java.util.Random; public class Jockenpo { /** * O computador realiza a jogada. */ private static int computadorJoga() { return new Random().nextInt(3) + 1; } /** * Verifica o campeão * [0] - Empate * [1] - Jogador * [2] - Computador */ private static int verificarVencedor(int jogador, int computador){ int vencedor; if (jogador == computador) { vencedor = 0; } else if (jogador == 1) { vencedor = (computador == 2) ? 2 : 1; } else if (jogador == 2) { vencedor = (computador == 3) ? 2 : 1; } else { vencedor = (computador == 1) ? 2 : 1; } return vencedor; } public static void main(String[] args) { int jogador; int computador; int vencedor; char repetir = 's'; while (repetir == 's') { jogador = 0; computador = 0; vencedor = 0; // Jogador joga while (jogador < 1 || jogador > 3) { System.out.println("[1] - Pedra \t [2] - Papel \t [3] - Tesoura"); System.out.print("> "); jogador = new Scanner(System.in).nextInt(); } // Computador joga while (computador < 1 || computador > 3) { computador = computadorJoga(); } vencedor = verificarVencedor(jogador, computador); System.out.println("-------------------"); System.out.println("J: " + jogador); System.out.println("C: " + computador); System.out.println("V: " + vencedor); switch (vencedor) { case 0: System.out.println(">> Empate <<"); break; case 1: System.out.println(">> Venceu <<"); break; case 2: System.out.println(">> Perdeu <<"); break; default: System.err.println("** Bug no jogo **"); break; } System.out.println("-------------------"); System.out.println(); System.out.print("Jogar de novo? [ S / N ]: "); repetir = new Scanner(System.in).next().toLowerCase().charAt(0); } System.exit(0); } } -
Java Criar metodos que retorne valor diferentes para cada classe
AdrianoSiqueira respondeu ao tópico de Lipeco em Java/Android SDK
+= é um operador de atribuição e não de operação matemática. Por isso ele não funciona dentro do System.out.println(); Você tem duas opções: // Atribuir o novo valor e depois imprimir // Essa é a forma mais adequada para o seu projeto public void acelerar() { motor.rpm += 100; System.out.println(motor.rpm); } // Imprimir com o valor temporariamente modificado // Note que dessa maneira, motor.rpm não terá o valor modificado public void acelerar() { System.out.println(motor.rpm + 100); } -
C Tenho muita dificuldade nesse código e tenho prova
AdrianoSiqueira respondeu ao tópico de Livia Maria em C/C#/C++
Acho que isso deve resolver: #include <stdio.h> #include <stdlib.h> int main() { int quantidade = 0; double valor = 0.0; double total = 0.0; do { printf("Quantidade do produto: "); scanf(" %i", &quantidade); if (quantidade > 0) { printf("Valor unitário: R$ "); scanf(" %lf", &valor); total += quantidade * valor; } } while (quantidade > 0); printf("---------------------------------------- \n"); printf("Total da compra: R$ %.2f \n", total); printf("---------------------------------------- \n"); return 0; } -
Java Desenvolva um programa que entre com nome e uma matrícula. Seu programa deve val
AdrianoSiqueira respondeu ao tópico de Michael Machado em Java/Android SDK
@r_Tray Não entendo bem como o JavaFX funciona por debaixo dos panos. Acho que o método main é opcional, pois funciona sem problemas. -
C Comparar valor digitado com valor contido em arquivo txt
AdrianoSiqueira respondeu ao tópico de fernanda_cab em C/C#/C++
Acho que isso resolve: #include <stdio.h> #include <stdlib.h> #include <time.h> #include <ctype.h> #include <stdbool.h> #define clear system("clear") // No Windows mude de "clear" para "cls" /** * Verifica se determinado arquivo existe. * * @param caminho Caminho completo para o arquivo que deve ser testado. * @return [T] - Existe / [F] - Não existe */ bool arquivoExiste(char caminho[]) { bool existe = false; FILE *file = fopen(caminho, "r"); existe = file != NULL; if (existe) { fclose(file); } return existe; } /** * Cria o arquivo no local especificado e preenche * ele com 100 valores aleatórios. * * @param caminho Caminho completo onde deve ser criado o arquivo. */ void gerarArquivo(char *caminho) { FILE *file = fopen(caminho, "w"); if (file != NULL) { srand(time(NULL)); for (int i = 0; i < 100; ++i) { fprintf(file, "%li\n", random() % 100); } fclose(file); } else { printf("[ E ]: O arquivo '%s' não pôde ser criado. \n", caminho); return; } } /** * Executa a busca pelo número dentro do arquivo. * * @param caminho Arquivo onde deve ser procurado. * @param procura Número que deve ser procurado. * @return A quantidade de vezes que o número procurado aparece no arquivo. */ int procurarArquivo(char caminho[], int procura) { FILE *file = fopen(caminho, "r"); if (file != NULL) { int ocorrencias = 0; char line[255]; while (fgets(line, sizeof(line), file) != NULL) { if (atoi(line) == procura) { ocorrencias += 1; } } fclose(file); return ocorrencias; } else { printf("[ E ]: O arquivo '%s' não pôde ser aberto. \n", caminho); return -1; } } int main() { char caminho[1000] = ""; char gerar = ' '; int procura = 0; int ocorrencias = 0; clear; printf("Caminho para o arquivo: \n"); printf("> "); scanf(" %s", caminho); printf("\n"); printf("Gerar o arquivo [ S / N ]: "); scanf(" %c", &gerar); gerar = toupper(gerar); if (gerar == 'S') { printf("[ I ]: Gerando o arquivo. \n"); gerarArquivo(caminho); } else if (!arquivoExiste(caminho)){ printf("[ E ]: O arquivo '%s' não existe. \n", caminho); return 1; } else { printf("[ I ]: Ignorando a criação do arquivo. \n"); } printf("\n"); printf("Número para procurar: "); scanf(" %i", &procura); ocorrencias = procurarArquivo(caminho, procura); if (ocorrencias >= 0) { printf("\n"); printf("----------------------------- \n"); printf("O valor %i aparece %i vezes. \n", procura, ocorrencias); printf("----------------------------- \n"); } return 0; } -
Java Desenvolva um programa que entre com nome e uma matrícula. Seu programa deve val
AdrianoSiqueira respondeu ao tópico de Michael Machado em Java/Android SDK
Segue um exemplo feito em JavaFX, é só adaptar para suas necessidades: package code; import javafx.application.Application; import javafx.geometry.HPos; import javafx.geometry.Insets; import javafx.geometry.Pos; import javafx.geometry.VPos; import javafx.scene.Scene; import javafx.scene.control.Alert; import javafx.scene.control.Button; import javafx.scene.control.Label; import javafx.scene.control.TextField; import javafx.scene.layout.GridPane; import javafx.stage.Stage; public class App extends Application { private Label labelNome; private Label labelMatricula; private TextField fieldNome; private TextField fieldMatricula; private Button buttonCancelar; private Button buttonAcessar; private GridPane pane; private Scene scene; private Alert alert; private String nome; private int matricula; public App() { this.labelNome = new Label("Nome"); this.labelMatricula = new Label("Matrícula"); this.fieldNome = new TextField("Aluno"); this.fieldMatricula = new TextField("200010000"); this.buttonCancelar = new Button("Cancelar"); this.buttonAcessar = new Button("Acessar"); this.pane = new GridPane(); this.scene = new Scene(pane); this.alert = new Alert(Alert.AlertType.NONE); this.nome = ""; this.matricula = 0; } @Override public void start(Stage stage) { buttonCancelar.setOnAction(event -> { alert.setAlertType(Alert.AlertType.INFORMATION); alert.setHeaderText("Saindo"); alert.setContentText(""); alert.showAndWait(); System.exit(0); }); buttonAcessar.setOnAction(event -> { nome = fieldNome.getText(); matricula = Integer.parseInt(fieldMatricula.getText()); if (nome.length() < 3) { alert.setAlertType(Alert.AlertType.WARNING); alert.setHeaderText("Nome inválido"); alert.setContentText("O nome não é válido"); alert.showAndWait(); fieldNome.clear(); fieldNome.requestFocus(); } else if (matricula < 200010000 || matricula >= 202000000) { alert.setAlertType(Alert.AlertType.WARNING); alert.setHeaderText("Matrícula inválida"); alert.setContentText("A matrícula não confere"); alert.showAndWait(); fieldMatricula.clear(); fieldMatricula.requestFocus(); } else { alert.setAlertType(Alert.AlertType.INFORMATION); alert.setHeaderText("Acesso permitido"); alert.setContentText("Tudo certo"); alert.showAndWait(); fieldNome.requestFocus(); fieldNome.clear(); fieldMatricula.clear(); } }); GridPane.setConstraints(labelNome, 0, 0, 1, 1, HPos.RIGHT, VPos.CENTER); GridPane.setConstraints(fieldNome, 1, 0, 1, 1, HPos.LEFT, VPos.CENTER); GridPane.setConstraints(labelMatricula, 0, 1, 1, 1, HPos.RIGHT, VPos.CENTER); GridPane.setConstraints(fieldMatricula, 1, 1, 1, 1, HPos.LEFT, VPos.CENTER); GridPane.setConstraints(buttonCancelar, 0, 2, 1, 1, HPos.LEFT, VPos.CENTER); GridPane.setConstraints(buttonAcessar, 1, 2, 1, 1, HPos.RIGHT, VPos.CENTER); pane.setAlignment(Pos.CENTER); pane.setHgap(15); pane.setVgap(15); pane.setPadding(new Insets(20)); pane.getChildren().addAll(labelNome, fieldNome, labelMatricula, fieldMatricula, buttonCancelar, buttonAcessar); stage.setTitle("Programa de Acesso"); stage.setScene(scene); stage.show(); } } -
Se não for necessário o uso de funções, poderia usar uma abordagem mais simplista: #include <stdio.h> #include <stdlib.h> int main() { int quantidade = 0; int entrada = 0; int maior = 0; int menor = 0; printf("Quantidade de números: "); scanf(" %i", &quantidade); for (int i = 0; i < quantidade; ++i) { printf("Número [ %i de %i ]: ", (i + 1), quantidade); scanf(" %i", &entrada); if (i == 0){ maior = entrada; menor = entrada; } if (entrada > maior) { maior = entrada; } if (entrada < menor) { menor = entrada; } } printf("----------------- \n"); printf("Maior: %3i \n", maior); printf("Menor: %3i \n", menor); printf("----------------- \n"); return 0; }
-
Tenta usar uma variável global: #include <stdio.h> #include <stdlib.h> int contador = 5; void funcao(){ printf("Função: %i \n", contador); contador -= 1; if (contador == 0) { contador = 5; } } int main(){ funcao(); funcao(); funcao(); funcao(); funcao(); funcao(); funcao(); funcao(); funcao(); funcao(); return 0; }
-
Implementando a teoria do @allanxd, uma possível solução poderia ser assim: #include <stdio.h> #include <stdlib.h> void funcao(){ static int contador = 5; printf("Função: %i \n", contador); contador -= 1; if (contador == 0) { contador = 5; } } int main(){ funcao(); funcao(); funcao(); funcao(); funcao(); funcao(); funcao(); funcao(); funcao(); funcao(); return 0; }
-
Tenta desse jeito: #include <stdio.h> #include <stdlib.h> /** * Controla a posição que deve ser inserido o novo valor, * além de servir como delimitador na hora da iteração. */ int ponteiroInsercao = 0; void adicionar(int vetor[], int valor) { vetor[ponteiroInsercao] = valor; ponteiroInsercao += 1; } void remover(int vetor[], int posicao) { if (posicao < 0 || posicao >= ponteiroInsercao) { printf("Posição inválida para remover: %i \n", posicao); return; } for (int i = posicao; i < ponteiroInsercao; ++i) { vetor[i] = vetor[i + 1]; } ponteiroInsercao -= 1; } int main() { int vetor[10]; adicionar(vetor, 0); adicionar(vetor, 1); adicionar(vetor, 2); adicionar(vetor, 3); adicionar(vetor, 4); adicionar(vetor, 5); adicionar(vetor, 6); adicionar(vetor, 7); adicionar(vetor, 8); adicionar(vetor, 9); remover(vetor, 0); for (int i = 0; i < ponteiroInsercao; ++i) { printf("| %i ", vetor[i]); } return 0; }
-
C Erro no código não aparece o resultado
AdrianoSiqueira respondeu ao tópico de Irwing Seiji Ato em C/C#/C++
Você fez o teste de mesa para saber se o algoritmo está retornando o valor corretamente? -
C Erro no código não aparece o resultado
AdrianoSiqueira respondeu ao tópico de Irwing Seiji Ato em C/C#/C++
Tenta da seguinte forma: #include <stdio.h> #include <stdlib.h> int main() { double capital = 0.0; double juros = 0.0; double montante = 0.0; int meses = 0; printf("Digite o valor do capital investido: "); scanf(" %lf", &capital); printf("Digite a taxa de juros: "); scanf(" %lf", &juros); juros /= 100; printf("Digite quantos meses foi aplicado: "); scanf(" %i", &meses); montante = capital * (1 + juros * meses); printf("O montante a ser resgatado sera: %.2f \n", montante); return 0; } -
C Erro no código não aparece o resultado
AdrianoSiqueira respondeu ao tópico de Irwing Seiji Ato em C/C#/C++
Tem alguma coisa errada aí. Tenta da seguinte forma: montante = capital * (1 + (juros / meses)); -
C Erro no código não aparece o resultado
AdrianoSiqueira respondeu ao tópico de Irwing Seiji Ato em C/C#/C++
@Irwing Seiji Ato Deixa um pouco o código de lado e pensa: "Qual é a fórmula para calcular o montante?" -
Um exemplo seguindo a ideia do @allanxd seria assim: #include <stdio.h> #include <stdlib.h> #include <ctype.h> #include <string.h> #include <stdbool.h> #define clear system("clear"); // No Windows mude de "clear" para "cls" int main() { struct Pessoa { char nome[15]; char sexo; char estadoCivil; int idade; }; const int quantidade = 10; char repetir = 'S'; while (repetir == 'S') { struct Pessoa pessoas[quantidade]; double mediaFeminino = 0.0; double mediaMasculino = 0.0; int quantidadeFeminino = 0; int quantidadeMasculino = 0; int ocorrenciaCasado = 0; int ocorrenciaSolteiro = 0; int ocorrenciaDivorciado = 0; char maiorOcorrencia = ' '; char menorOcorrencia = ' '; clear printf(">> Cadastro de Pessoas \n"); for (int i = 0; i < quantidade; ++i) { printf("Nome: "); scanf(" %[^\n]s", pessoas[i].nome); printf("Sexo [ F / M ]: "); scanf(" %c", &pessoas[i].sexo); pessoas[i].sexo = toupper(pessoas[i].sexo); printf("Idade: "); scanf(" %i", &pessoas[i].idade); printf("Estado civil [ C / S / D ]: "); scanf(" %c", &pessoas[i].estadoCivil); pessoas[i].estadoCivil = toupper(pessoas[i].estadoCivil); // Acumula para calcular a média switch (pessoas[i].sexo) { case 'F': mediaFeminino += pessoas[i].idade; quantidadeFeminino += 1; break; case 'M': mediaMasculino += pessoas[i].idade; quantidadeMasculino += 1; break; } // Contabiliza as opções de estado civil switch (pessoas[i].estadoCivil) { case 'C': ocorrenciaCasado += 1; break; case 'D': ocorrenciaDivorciado += 1; break; case 'S': ocorrenciaSolteiro += 1; break; } } // Determinar maior ocorrência if (ocorrenciaCasado > ocorrenciaDivorciado) { if (ocorrenciaCasado > ocorrenciaSolteiro) { maiorOcorrencia = 'C'; } else { maiorOcorrencia = 'S'; } } else { if (ocorrenciaDivorciado > ocorrenciaSolteiro) { maiorOcorrencia = 'D'; } else { maiorOcorrencia = 'S'; } } // Determinar menor ocorrência if (ocorrenciaCasado < ocorrenciaDivorciado) { if (ocorrenciaCasado < ocorrenciaSolteiro) { menorOcorrencia = 'C'; } else { menorOcorrencia = 'S'; } } else { if (ocorrenciaDivorciado < ocorrenciaSolteiro) { menorOcorrencia = 'D'; } else { menorOcorrencia = 'S'; } } // Calcular média das idades mediaFeminino /= quantidadeFeminino; mediaMasculino /= quantidadeMasculino; printf("\n" ">> Exibir Relatório \n" " Nome | Sexo | EC | Idade \n" "----------------------------------- \n"); for (int i = 0; i < quantidade; ++i) { printf("%15s | %c | %c | %3i \n", pessoas[i].nome, pessoas[i].sexo, pessoas[i].estadoCivil, pessoas[i].idade); } printf("\n" ">> Ocorrências de Estado Civil \n"); printf(" Casado: %i \n", ocorrenciaCasado); printf("Divorciado: %i \n", ocorrenciaDivorciado); printf(" Solteiro: %i \n\n", ocorrenciaSolteiro); printf("Maior Ocorrência: %c \n", maiorOcorrencia); printf("Menor Ocorrência: %c \n\n", menorOcorrencia); printf(" Média Feminino: %.2f \n", mediaFeminino); printf("Média Masculino: %.2f \n", mediaMasculino); if (getchar() == '\n') { getchar(); } printf("Repetir [ S / N]: "); scanf(" %c", &repetir); repetir = toupper(repetir); } clear return 0; }
-
acer nitro 5 travamento e congelamento
AdrianoSiqueira respondeu ao tópico de matheus10resr em Notebooks
Pode ser alguma instabilidade por parte do driver. Lembro de uma situação parecida com os processadores da AMD, onde o gráfico integrado simplesmente dava uma "gargalada". -
C Erro no código não aparece o resultado
AdrianoSiqueira respondeu ao tópico de Irwing Seiji Ato em C/C#/C++
Tem certeza que a fórmula para calcular o montante está correta? Realizando um teste de mesa manualmente pela calculadora, obtive um valor estratosférico... -
Seria algo assim: int valor1 = 10; int valor2 = 5; int maior = 0; if (valor1 > valor2) { maior = valor1; } else if (valor1 < valor2) { maior = valor2; }
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