Deutriex
Geek
Registrado
2.1K Mensagens
207 Curtidas
Sim, infelizmente o gabarito está certo
2 em binário é 10
e 1 em binário é 01
Ao fazer o AND com os dois números, o operador o faz bit a bit, resulta-se em zero, pois não existe bits 1 comuns na mesma posição, portanto o resultado é zero.
10 (and)
01
--
00
E isso não se limita ao VBScript, as é assim em todas as linguagens de programação.
E onde você chegou a conclusão que em C o resultado é 1? Como já disse, a resposta não depende da linguagem utilizada. Em C, o resultado também retorna zero:
[PHP]
#include
#include
int main(){
int Expression1 = 1;
int Expression2 = 2;
int Result = Expression1 & Expression2;
printf("%d\n", Result);
system("pause");
return 0;
}
[/PHP]
Sony 4k 65'' | AMD Ryzen 4600G | MSI GeForce GTX 1650 | Kingston NV1 4TB + Corsair 4TB | 16GB DDR4 3200 MHz
Shura16
Ubbergeek
Registrado
2.5K Mensagens
601 Curtidas
tpcvasco
General de Pijama
Registrado
2.9K Mensagens
330 Curtidas
Ah tá, não me liguei q o AND, em VBScript, era bit-a-bit, achei q fosse o && do C. Se vc substituir nesse código por
int Result = Expression1 && Expression2;
Dá como resposta o 1 q eu pensei.
"Milhouse: - Médicos e bombeiros são heróis.
Bart Simpson: - Olha, as casas continuam pegando fogo e as pessoas continuam doentes. Os verdadeiros heróis são os Schwarzenegger's, os Stallone's, e, em menores proporções, os Vandame's..."
Atento
Tô em todas
Registrado
2.5K Mensagens
9 Curtidas
Se for o operador lógico e não o bit a bit a resposta seria 1, pois tudo o que for diferente de 0 é verdadeiro.
Fergo
Highlander
Registrado
9.3K Mensagens
1.1K Curtidas
Na verdade o script vai dar pau de qualquer forma: na linha onde ele escreve o resultado, está faltando a concatenação de string (que em VB é o ampersand (&)):
Response.Write "Result = " & Result