Cainã Rinaldi Esteche - Clube do Hardware
Cainã Rinaldi Esteche
Cainã Rinaldi Esteche começou a seguir Criação de arrays com métodos, JDBC para Postgresql (java.lang.ClassNotFoundException: org.postgresql.Driver), Custon SeekBar Android. Erro. e e 2 outros 8 de julho de 2018
Java JDBC para Postgresql (java.lang.ClassNotFoundException: org.postgresql.Driver)
Cainã Rinaldi Esteche postou no tópico em Java
Boa tarde. Estou tentando me conectar ao banco de dados PostgreSQL. Porém estou tendo o erro java.lang.ClassNotFoundException: org.postgresql.Driver. Já adicionei o .jar ao path e ainda assim nao consigo... package com.ConexaoJDBC; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.util.logging.Level; import java.util.logging.Logger; public class ConexaoPostgres implements ConexaoJDBC{ private String url, usuario, senha; private Connection con; public ConexaoPostgres() { url = "jdbc:postgresql://localhost:5432/UserHU"; usuario ="caina"; senha = "caina.e"; try { Class.forName("org.postgresql.Driver"); con = DriverManager.getConnection(url, usuario, senha); con.setAutoCommit(false); System.out.println("Conexão realizada com sucesso."); }catch(Exception e) { e.printStackTrace(); } } @Override public Connection getConnection() { return con; } @Override public void close() { if (con != null) { try { con.close(); }catch(SQLException e) { Logger.getLogger(ConexaoPostgres.class.getName()).log(Level.SEVERE, null, e); } } } @Override public void commit() throws SQLException { con.commit(); close(); } @Override public void rollback() { if (con != null) { try { con.rollback(); }catch(SQLException e) { Logger.getLogger(ConexaoPostgres.class.getName()).log(Level.SEVERE, null, e); }finally { close(); } } } }
Custon SeekBar Android. Erro.
Cainã Rinaldi Esteche postou no tópico em Smartphones e apps
olá, quero fazer um formulário para meu app, onde a pessoa utilize uma SeekBar para as opções. Porém, quero que ela toda fique preta, apenas a bolinha se mova, sem mostrar um aparente progresso. Quando utilizo o android:progressBackgroundTint=" cor aqui", ela fica com uma transparencia, nao com uma cor solida como eu gostaria. abaixo o código e como ela está: <SeekBar android:id="@+id/seekBar" style="@style/Widget.AppCompat.SeekBar.Discrete" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:max="4" android:progress="2" android:progressTint="@color/sb" android:progressBackgroundTint="@color/sb" android:thumbTint="@color/sbBola" />
Python Arquivo gfx no Python - python challenge
Cainã Rinaldi Esteche postou no tópico em Programação - outros
Olá, estou joganod o Python Challenge, um enigma feito em python. no lvl12, me deparei com um arquivo .gfx que o site me deu, porém nao sei como trabalhar com ele em python. pesquisei mt e n parece abrir com nada. existe alguma biblioteca em python, ou algo pra extrair algo do arquivo? arquivo em anexo. evil2.rar
Java Problemas com OverFlow de métodos, ao fazer um Balde.
Olá, estou tentando programar um balde para uma tentativa de Paint que estou fazendo. Para tal, criei um algoritmo que pinta meus pixels a volta do meu pixel de escolha, dentro de uma bufferedImage pintada em uma JFrame, de acordo com a cor dele. o problema é que para isso utilizei um método dentro dele mesmo, e isto gerou um overflow muito grande. Gostaria de saber como lidar com isso. grato. package balde; public class Balde { int x, y; int rgb; int color; Balde(int x1, int y1) { x = x1; y = y1; color = 255; rgb = Tela.tela.getRGB(x1, y1); Tela.tela.setRGB(x, y, color); pintar(x, y); } public void pintar(int x, int y) { for (int i = -1; i <= 1; i++) { for (int u = -1; u <= 1; u++) { if (Tela.tela.getRGB(x+i, y+u) == rgb) { Tela.tela.setRGB(x+i, y+u, color); pintar(x+i,y+u); } } } } }
Java Criação de arrays com métodos
Olá. Estou trabalhando em um projeto em java, que é um sistema de cadastramento de vôos de avião. Para isso, criei 3 classes: controle_aviao, aviao, passageiros. Os dois botões principais são: cadastrar voo e reservas passagem. Para o cadastro de voos (sendo o max 3 voos), criei um array de objeto de tamanho 3, e la cadastro meus voos. Cada voo tem um numero dele, e um numero de assentos disponiveis, todos estipulados no cadastramento. Quando fui criar então o método reservas as passagens, pensei: "toda vez que cadastro um voo, crio junto um array da classe passageiros e de tamanho (numero de assentos).". O problema que encontrei é, caso eu cadastre dois voos, como estes vão ser cadastrados por um mesmo método, vão criar um array de mesma referencia. Como faço pra diferencialos depois? tenho como alterar a referencia de um array para o numero de meu voo? public void cadastroDeVoos() { int nulo = nullo(); if (nullo() != 4) { voo[nullo()] = new aviao(); //while com erro //while(!voo[nulo].getTipo().equals("comercial") || !voo[nulo].getTipo().equals("Comercial") || !voo[nulo].getTipo().equals("fretado") || !voo[nulo].getTipo().equals("Fretado") || !voo[nulo].getTipo().equals("carga") || !voo[nulo].getTipo().equals("Carga")) { System.out.println("Digite o tipo do vôo (comercial, fretado ou de carga):"); voo[nulo].setTipo(ler.next()); if (voo[nulo].getTipo().equals("comercial") || voo[nulo].getTipo().equals("Comercial")) { System.out.println("Qual a lotação máxima de passageiros?"); voo[nulo].setLotacao((int)(ler.nextInt())); voo[nulo].setEconomica((int)(voo[nulo].getLotacao()*0.8)); voo[nulo].setPclasse((int)(voo[nulo].getLotacao()*0.2)); voo[nulo].setOrigem(ler.nextLine()); }else if(voo[nulo].getTipo().equals("fretado") || voo[nulo].getTipo().equals("Fretado")){ System.out.println("Qual a lotação máxima de passageiros?"); voo[nulo].setLotacao(ler.nextInt()); voo[nulo].setOrigem(ler.nextLine()); }else if (voo[nulo].getTipo().equals("carga") || voo[nulo].getTipo().equals("Carga")){ System.out.println("Qual o peso limite de carga?"); voo[nulo].setPesot(ler.nextInt()); voo[nulo].setOrigem(ler.nextLine()); }else { System.out.println("Tipo não encontrado. Tente novamente."); //	}
Erro sobre declarar variáveis no VisualG
Cainã Rinaldi Esteche respondeu ao tópico de Cainã Rinaldi Esteche em Programação - iniciantes
@Simon Viegas agora eu programei o código em c++, porém com algumas alterações. Me interessa saber agora só saber para os números que seguem a função 4x+3 =y (3; 7; 11; 15 etc), e não me interessa mais saber o número de passos até o número virar 1, e sim até ele ficar menor que o inicial. (detalhe: agora em vez de fazer 3*x+1, estou fazendo (3*x+1)/2). enfim, o código está dando resultados diferentes de quando eu programei no visualg g. inclusive, quando mudo o while ( c < 1048575);, do do-while para um valor tipo 8, ele continua em um looping que gera muitos valores, enquanto deveria escrever apenas 2. #include <iostream> #include<stdlib.h> using namespace std; int main() { int aux = 0; int c = 3; int d; int x; int t; do { d = 0; x = c; \\isso só aumenta o D while (x >= c) { if (x % 2 == 0) { x = x/2; d = d + 1; } else { x = (3*x+1)/2; d = d + 1; } } cout << d << endl; if (d > aux) { aux = d; } c = c + 4; t = t+1; } while ( c < 1048575); cout << "o maior valor de operações foi de: "<< aux << endl; cout << "Foram calculados: " << t <<endl; system("pause"); return 0; }
@isrnick Deu certinho com isso, valeu! adicionado 2 minutos depois @Simon Viegas Olá, quando tentei declarar a variável como real, ele continuou mostrando o erro, desta vez como se eu tivesse que ter posto como inteiro. O que resolveu foi utilizar a sugestão do Isrnick, de utilizar a barra invertida (\). Vou tentar ainda utilizar outra variável para a contagem, já que é interessante saber o número de vezes que foi necessário se fazer o loop. Obrigado ^^ adicionado 8 minutos depois @isrnick @Simon Viegas Ficou ótimo, valeu.
Cainã Rinaldi Esteche postou no tópico em Programação - iniciantes
Ola, tudo bem? Estou começando aprender a programar, e para isso estou utilizando o Visualg para exercitar minha lógica de programação. Trabalhando lá com algoritmos então, resolvi criar o seguinte: informo para o programa um certo número e, se este for par, divido por dois; se for impar, multiplico por 3 e somo 1. Faço isso até este meu número virar 1 (sim, todos viram uma hora). Enfim, quando fui executar o algoritmo, séries de erros apareceram com relação a atribuição das variáveis, entre inteiro e real. já tentei mudar várias vezes, criar variáveis de auxílio etc. Se puderem me ajudar agradeço. O código está abaixo, entre os spoillers. Obs: além do repita, já tentei utilizar para, enquanto, procedimentos, funções etc.