Project Euler exercicio 1

Olá, este é meu primeiro post, fiz e olhei esse código mas não entendo a parte do OR, pois toda vez em que o laço se faz tudo bem será armazenado no total, mas quando as duas condições do OR sao aceitas ao mesmo tempo não deveria guardar é isso ?

public class ativ_1 {
public static void main(String[] args){
	
	int total= 0;
	for(int i=0;i<1000;i++){
		if(i%5 == 0 || i%3==0){
			total +=i;
			System.out.println(total);
			
			
			}
		}
	} 
}

Sempre dará falso nessa situação ? por que ?

Olá murtoise, o OR funciona quase da mesma forma que usamos na vida real mesmo, por exemplo:

Se (pessoa tiver aceso VIP) OU (comprar o ingresso do cinema) ENTÂO ela pode entrar.

Ou seja, com o OR, se qualquer uma das condições for verdadeira, o resultado será verdadeiro.

Só não confunda com o OU exclusivo.

Obrigado esclareceu minha duvida.

[quote=rafadelnero]Olá murtoise, o OR funciona quase da mesma forma que usamos na vida real mesmo, por exemplo:

Se (pessoa tiver aceso VIP) OU (comprar o ingresso do cinema) ENTÂO ela pode entrar.

Ou seja, com o OR, se qualquer uma das condições for verdadeira, o resultado será verdadeiro.

Só não confunda com o OU exclusivo.[/quote]

Acredito que o “ou” da nossa linguagem natural é muito mais parecida com o “ou exclusivo” do que o “inclusivo”. Tanto que é considerada uma conjunção alternativa.

Exemplos:

  • desenvolver em java ou c#.
  • ir de carro ou de transporte público.
  • fazer faculdade pública ou particular.
  • acordar cedo ou tarde…

Por mais que alguns casos você pode pensar da forma inclusiva como: fazer um sistema em Java que se integre a um em C#; ou ir de carro até a estação, depois pego o metrô… mas na maioria das situações, a pessoa estará usando o “ou” com sentido de exclusão.

No seu exemplo mesmo: é claro que se a pessoa tiver os dois, ela entra também, mas ela usará apenas um para entrar.