Joelson Silva
-
Total de itens
16 -
Registro em
-
Última visita
Posts postados por Joelson Silva
-
-
Olá Diógenes você tem dois casos o primeiro basta você pecorrer as linhas da matriz ou as colunas e cada interação somar o valor 5, no segundo caso voçê tem informa qual a posição da linha e da coluna que deseja soma.
-
pessoal estou precisando de um help dos senhores,
1 - como faço para chamar o metodo dentro do metodo principal o main,
exibir suas informações, só estou conseguindo exibir dentro do proprio método.
2 - passar o resultado do metodo "contImparesPares()" para "proximoMetodo()" para ser usado.
eu pergunto se é preciso retorna o resultado do metodo "contImparesPares()", para metodo principal para ser usado no "proximoMetodo()" ou posso fazer direto do metodo para metodo.
aguardo pela ajuda.
package br.Exercicio;
public class MetodoImparPar {
public static void main(String[] args) {
int tam = 6;
int[] vetA = {13, 10, 17, 14, 25, 26};contImparesPares(vetA, tam);
}
public static void contImparesPares(int[] vetA, int tam) {
int[] impar = new int[6];
int[] par = new int[6];int contImpar = 0, contPar = 0;
for (int i = 0; i < tam; i++) {
if (vetA[i] % 2 == 1) {
impar[i] = impar[i] + vetA[i];
contImpar++;
} else {
par[i] = par[i] + vetA[i];
contPar++;
}
}
for (int i = 0; i < tam; i++) {
System.out.print(impar[i] + " ");
}
System.out.println();for (int i = 0; i < tam; i++) {
System.out.print(par[i] + " ");
}
System.out.println();System.out.print(" qtde impares: " + contImpar);
System.out.print(" qtde impares: " + contPar);}
public static void proximoMetodo(int[] impar, int[] par, int contImpar, int contPar) {
}
}
-
obrigado, mais já tinha feito a correção.
-
pessoal tenho uma duvida de como fazer para controlar o ciclo do "for", desde já agradeço.
passo 1: o primeiro procedimento1 vai até chegar na sequencia 1 2 4 e exibe, chamar o segundo procedimento2.
passo2: o segundo procedimento2, vai até chegar na sequencia 1 4 e exibe,
passo3: chamar o primeiro procedimento1, que parou na sequencia 1 2 4, gerar a sequencia 1 2 5, 1 3 4 exibe, chamar o passo 2
passo2: chamar o segundo procedimento2, que parou na sequencia 1 4, gerar a sequencia 1 5, 2 3, 2 4 exibe ate teminar as sequencias.
algoritmo "semnome"
// Função :
// Autor :
// Data : 15/11/2022
// Seção de Declarações
var
vetA: vetor[1..3]de inteiro
vetB: vetor[1..2]de inteiroprocedimento procediment1
var
i,j,x,p1,p2,p3:inteiro
inicio
// Seção de Comandospara i de 1 ate 5 faca
vetA[1]:= i
para j de i+1 ate 5 faca
vetA[2]:= j
para x de j+1 ate 5 faca
vetA[3]:= x
escreval(vetA[1],vetA[2],vetA[3])
fimpara
fimpara
fimpara
fimprocedimentoprocedimento procediment2
var
i,j:inteiro
inicio
// Seção de Comandos
para i de 1 ate 5 faca
vetB[1]:= i
para j de i+1 ate 5 faca
vetB[2]:= j
escreval(vetB[1],vetB[2])
combinar1
fimpara
fimpara
fimprocedimento
inicio
combinar1
combinarfimalgoritmo
-
Estou tentando inverte a posição sem repetir posição, para qualquer tamanho.
exemplo:
1 2 3
2 1 3
3 1 2
algoritmo "exericio"
// Função :
// Autor :
// Data : 25/10/2022
// Seção de Declarações
varnum,valor,cont,i,ultvalor:inteiro
inicio
// Seção de Comandosescreva("Digite numero:")
leia(num)cont:=1
enquanto cont <> num facapara i de cont ate 3 faca
ultvalor:=cont
se(i = 1)então
escreva(i)
fimse
se(i <> ultvalor)então
escreva(i)
senao
ultvalor:=ultvalor+1
fimse
fimpara
escreval
cont:=cont+1
valor:=ultvalor
fimenquantofimalgoritmo
-
Preencha um vetor de numeros inteiros para 10 posições, contar a qtde numeros em sequencia.
sendo que os numeros em sequencias não se repetem, tipo: 11, 222,11.
exenplo sequencias a encontrar:
vetor 1, 3 4, 6 7 8 9, 2, 10.
contagem 1, 2, 4, 1, 1, = minha sequencia seria: 12411
outra
vetor 1, 3, 5 ,7 , 9.
contagem 1, 1, 1, 1, 1 = minha sequencia seria: 11111
package teste;
public class ContSeq2 {
public static void main(String[] args) {
int[] vetor = {1,3,4,6,7,8,9,2,10}; //12411
//int[] vetor = {1,3,5,7,9}; //11111int cont = 0;
StringBuilder str = new StringBuilder();String c = String.valueOf(vetor[0]);
for (int i = 0; i < vetor.length; i++) {
if (i < vetor.length - 1) {
if (vetor[i] + 1 == vetor[i + 1]) {
cont++;
continue;
}
}
if(cont == 1) {
str.append(c).append(",").append(vetor[i]);
cont=0;
}else if (cont > 1) {
str.append(c).append(" a ").append(vetor[i]);
cont = 0;
} else {
str.append(vetor[i]);
}if (i < vetor.length - 1) {
str.append(",");
c = String.valueOf(vetor[i + 1]);
}
}System.out.println(str);
}
} -
-
Onde estou errando na verificação da matriz.
Procurar na linha da matriz, números iguais em suas respectivas posições e remover da matriz
algoritmo "matriz"
// Função :
// Autor : joelson
// Data : 22/02/2021
// Seção de Declarações
var
vetA: vetor[1..3]de inteiro
vetBimpar: vetor[1..3]de inteiro
j,i,x,k,linha,coluna,repetido,contImpar,cont,total:inteiro
matriz: vetor[1..10,1..3]de inteiroinicio
// Seção de Comandostotal:=0
enquanto total < 10 faca
total:=total+1escreval("Digite o Vetor de um total de 10:,[",total,"]")
para j de 1 ate 3 faca
escreva("Vetor:[",j,"]")
leia(vetA[j])
fimpara
escreval()//achar numeros impares
para i de 1 ate 3 faca
se(vetA[i] mod 2 = 1)então
vetBimpar[i]:= vetA[i]
fimse
fimpara
PARA k DE 1 ATE CONT FACA
repetido:=0
PARA linha DE 1 ATE 3 FACA
PARA coluna DE 1 ATE 3 FACA
SE(vetBimpar[linha] = matriz[K,coluna])então
repetido:=repetido+1
fimse
FIMPARA
FIMPARAfimenquanto
//escrever a matriz depois dos cinco valores digitados
escrevaL(" exibir Matriz")
escrevaL("__________________")
PARA linha DE 1 ATE 3 FACA
PARA coluna DE 1 ATE 3 FACA
escreva(matriz[linha,coluna])
FIMPARA
escreval()
FIMPARAcontImpar:=0
vetBimpar[1]:=0
vetBimpar[2]:=0
vetBimpar[3]:=0
escreval("Total digitados: ", total)
fimalgoritmo -
bom dia
-
Bom dia
Fechamento para acerto de terno na quina.
o objetivo e acertar a logica do fechamento.
Combinando 8 dezenas de grupos de 5 é igual 56 volantes, dentro desses 56 volantes a vários ternos repetidos, gostaria de remover esses ternos repetidos.
detalhe não se preocupem com gerador ou quantidade para combinar.
minha duvida:
no código abaixo ele me apresenta a seguinte matriz.
onde está o meu erro de logica, pois tem conjunto de três iguais
que não encontro no fechamento na matriz abaixo.está na matriz abaixo, tem:
123, 124, 125,134,135,145,234,234,345,
126,127,128,267,267,278,345,346,347,356,357,367.não está na matriz abaixo, não tem:
1 3 6; 1 3 7; 1 3 8; 1 4 6; 1 4 7; 1 4 8; 1 5 6; 1 5 7; 1 5 8;
2 3 6; 2 3 7; 2 3 8; 2 4 5; 2 4 6; 2 4 7; 2 4 8; 2 5 6; 2 5 7;
2 5 8; 2 6 7; 2 6 8; 2 7 8; 3 4 8; 3 5 6; 3 5 7; 3 5 8; 3 6 7;
3 6 8; 3 7 8; 4 5 8; 4 6 7; 4 6 8; 4 7 8; 5 6 8; 5 7 8; 6 7 8;matriz do código:
1 2 3 4 5
1 2 6 7 8
3 4 5 6 7como a matriz deve ficar:
1 2 3 4 6;
1 2 3 5 8;
1 2 4 7 8;
1 3 6 7 8;
1 4 5 6 7;
2 3 4 5 7;
2 5 6 7 8;
3 4 5 6 8;package br.Exercicio;
import java.util.Scanner;
public class CombinaReduzido {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int[] vetA = new int[5];
int[][] array = new int[99999][5];
int num = 0, iguais = 0,cont = 0, total = 0;System.out.println("Digite numero Comb:");
num = scan.nextInt();for (int n1 = 1; n1 <= num; n1++) {
vetA[0] = n1;
for (int n2 =n1 + 1;n2 <= num; n2++) {
vetA[1] = n2;
for (int n3 =n2 + 1;n3 <= num; n3++) {
vetA[2] = n3;
for (int n4 =n3 + 1;n4 <= num; n4++) {
vetA[3] = n4;
for (int n5 =n4 + 1;n5 <= num; n5++) {
vetA[4] = n5;total++;
for (int t = 0; t <= cont; t++) {
iguais = 0;
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
if (vetA == array[t][j]) {
iguais = iguais + 1;
}
}
}
if (iguais > 3) {
break;
}
}
if (iguais < 3) {
cont = cont + 1;
for (int x = 0; x < 5; x++) {
array[cont][x] = vetA[x];
}
System.out.println(" "+vetA[0]+" "+vetA[1]+" "+ vetA[2]+" "+ vetA[3]+" "+vetA[4]);
}}
}
}
}
}
System.out.println("reduzidos:"+ cont);
System.out.println("total gerados:"+ total);
}
}
-
Leonardo
http://loteriaeconomica.blogspot.com/2011/07/minimos-matematicos.html
eu coloquei endereço acima, para você entender melhor, o padrão abaixo de como aplicar, ou seja o código ele atinge condição é não a garantia.
V = Total de dezenas da matriz
K = Tamanho dos blocos (qtd de dezenas do bilhete)
T = Garantia
M = CondiçãoV=:8
K=:5
T:=3
M:=3
aqui tá todas as sequencias de três : 123, 124, 125, 126, 127, 128, 134, 135, 136, 137, 138, 145, 146, 147, 148, 156, 157, 158, 167, 168, 178, 234, 235, 236, 237, 238, 245, 246, 247, 248, 256, 257, 258, 267, 268, 278, 345, 346, 347, 348, 356, 357, 358, 367, 368, 378, 456, 457, 458, 467, 468, 478, 567, 568, 578, 678.
A matriz abaixo, possui pelo menos 01 volante com a garantia de 3 acertos iguais, ou seja se você procurar qualquer conjunto da sequencia acima você acha na matriz abaixo, foi o que eu não conseguir atingir.
12346
12358
12478
13678
14567
23457
25678
34568
duvidas é só chamar, aguardo sua resposta.
abraço.
-
Leonardo meu querido a sequencia ainda esta furada, mais a matriz abaixo ela
atinge o objetivo, tem todas as sequencias de 3.
1 2 3 4 6 1 2 3 5 8 1 2 4 7 8 1 3 6 7 8 1 4 5 6 7 2 3 4 5 7 2 5 6 7 8 3 4 5 6 8 Talvez para se atinge a matriz acima seja o esquema abaixo, como ela foi feita deslocando as combinações, assim cada dezena tem as mesma quantidade a 1 repete 5 vezes e assim por diante, de mais essa analisada me diga qual o melhor caminho.
obrigado.
um abraço.
-
Muito obrigado Leonardo foi de grande ajuda. mais a sequencia está furada, veja que se eu escolher 8 números para formar conjuntos 5 em 5, o total da 56 volantes, aplicando a redução para se ter 3 acerto, o código apresentar o seguinte resultado:
1 2 3 4 5 1 2 3 6 7 1 2 4 6 8 1 2 5 7 8 1 3 4 7 8 1 3 5 6 8 1 4 5 6 7 as seguintes sequencias no reduzido só tem 2 acerto:> 2 3 8; 247;256;346;357;367;378;458;678
Bem a sua logica não esta errada, porque você está olhando para o sorteio que são 5 dezenas, conferindo com as 5, assim vai esta contigo o conjunto de 3, mais como o objetivo e ter apenas os 3 o algoritmo precisa de uma modificação.
-
Olá pessoal
Estou precisando de uma ajuda no código abaixo, estou fazendo exercício sobre a loteria, o que é para fazer,
Dentro de um universo de numero no nosso caso eu escolhi 8 dezenas combinadas de 5 em 5, eu tenho que encontrar todas as sequencias de 3 ou seja 3 acerto iguais.
exemplo, 123,124,125,126,127 até ultima 678.
mais tem algum erro no código porque tem volantes se repetindo números a mais, veja no volantes 1 e volantes 3, ele repete 4 números iguais, o mesmo acontece para outro caso volantes 2=: 1 2 3 6 7 e volantes 5=: 1 2 5 6 7.
segue o código abaixo para uma correção.
Agradeço quem pode dar uma luz.
obrigado.
volantes 1=: 1 2 3 4 5
volantes 2=: 1 2 3 6 7
volantes 3=: 1 2 4 5 6
volantes 4=: 1 2 4 7 8
volantes 5=: 1 2 5 6 7
volantes 6=: 1 3 4 5 6
volantes 7=: 1 3 4 7 8
volantes 8=: 1 3 5 6 7
volantes 9=: 1 4 5 6 8
volantes 10=: 2 3 4 5 6
volantes 11=: 2 3 4 7 8
volantes 12=: 2 3 5 6 7
volantes 13=: 2 4 5 6 8
volantes 14=: 3 4 5 6 7
reduzidos: 14
total gerados: 56
algoritmo "loteria"
var
vetA: vetor[1..5]de inteiro
vetB: vetor[1..5]de inteiro
num,i,j,iguais,d,x,a,cont,total:inteiro
n1,n2,n3,n4,n5:inteiro
inicio
// Seção de Comandosescreva("informe numero:")
leia(num)para n1 de 1 ate num faca
vetA[1]:= n1
para n2 de n1+1 ate num faca
vetA[2]:= n2
para n3 de n2+1 ate num faca
vetA[3]:= n3
para n4 de n3+1 ate num faca
vetA[4]:= n4
para n5 de n4+1 ate num faca
vetA[5]:= n5total:= total + 1
para i de 1 ate 5 faca
para j de 1 ate 5 faca
se(vetA = vetB[j])então
iguais:=iguais + 1
fimse
fimpara
fimparase(iguais = 3)ou(iguais = 0)então
para x de 1 ate 5 faca
vetB[x]:= vetA[x]
fimpara
a:=a + 1
escrevaL("volantes",a,"=:",vetA[1],vetA[2],vetA[3],vetA[4],vetA[5])
cont:=cont + 1
fimse
//************************************
x:=0
iguais:=0fimpara
fimpara
fimpara
fimpara
fimpara
escreval("reduzidos:", cont)
escreval("total gerados:", total)
fimalgoritmo
remover valores encontrados na posição ArrayList
em Repositório de scripts - Java
Postado · Editado por Joelson Silva
se tiver cadeado fecha
}