Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Por alguma razão, as casas nas ruas são numeradas a partir de 1
andares em edifícios (geralmente) a partir de 1
quartos com 1
Por que os mandados são numerados a partir de 0?
E as horas, minutos e segundos são numerados a partir de 0.
E as horas, minutos e segundos são numerados a partir de 0.
e também a velocidade e outras coisas
porque o 0 no velocímetro tem um significado físico - velocidade zero.
E zero é um disparate.
Na linguagem humana, é comum dizer "primeiro", "segundo"...
Alguém já ouviu falar em "in-zero"?
...........
Ainda é preciso subtrair um da TotalOrders()
Não entendo esta teimosia que diz que zero é mais conveniente
assim como no ArraySize, você tem que subtrair um.
qual é o objetivo da conveniência?
todo o tema está cada vez mais parecendo uma coleção de piadas sobre programadores
sem ofensa intencional
aqui está um exemplo
-- um programador pergunta a um colega -- "Posso pegar emprestado mil até o dia do pagamento?
-- leve 1024 para ficar quites.
de forma pouco convincente
quais são as vantagens de contar a partir do 0?
Para um ser humano, não para uma máquina
Eu não quero convencer ninguém, o principal é que eu mesmo estou convencido disso. Para isso, terei que conquistar todos os tipos de algoritmos complicados com arrays.
Eu também não estou impondo minha opinião.
quando tive que trabalhar com matrizes, vi que muitas vezes era conveniente deslocar um elemento por seu índice em um loop
mas tem havido muitos contra-exemplos onde é intuitivamente mais fácil ter o último índice igual à dimensão
ou este exemplo: for(int i=0; i<variables+constants; i++)
aqui está a enumeração de variáveis e constantes; seria intuitivamente mais conveniente se i=variáveis+1 significassem transição para a área de constantes
ou seja, pelo número de variáveis + 1 - significa que as variáveis terminaram, as constantes começaram - tudo é simples
mas não - temos que lembrar de diminuir em um (ou fazer uma conversão separada do número variável para o índice da matriz)
portanto, nem tudo é tão simples.
Eu também não estou impondo minha opinião.
quando tive que trabalhar com matrizes, vi que muitas vezes era conveniente deslocar um elemento por seu índice em um loop
mas tem havido muitos contra-exemplos onde é intuitivamente mais fácil ter o último índice igual à dimensão
ou este exemplo: for(int i=0; i<variables+constants; i++)
aqui está a enumeração de variáveis e constantes; seria intuitivamente mais conveniente se i=variáveis+1 significassem transição para a área de constantes
ou seja, pelo número de variáveis + 1 - significa que as variáveis terminaram, as constantes começaram - tudo é simples
mas não - temos que lembrar de diminuir em um (ou fazer uma conversão separada do número variável para o índice da matriz)
portanto, não é tudo tão simples assim.
Porque não há como fugir da matemática escolar com a contagem de um.
Quando se conta a partir de 0, não é preciso lembrar de nenhuma unidade, tudo se soma miraculosamente por si só.
Tudo é simples e claro:
for(int i=0; i<variables; i++){}
for(int i=variables; i<variables+constants; i++){}
ou
for(int i=0; i<variables+constants; i++){if(i<variables){}else{}}}
Se de repente fizer uma contagem regressiva a partir de 1, então há algo errado com o algoritmo.
e também a velocidade e outras variáveis
porque o 0 no velocímetro tem um significado físico - velocidade zero
e zero é um disparate.
A linguagem humana é para dizer "primeiro", "segundo"...
Alguém já ouviu falar em "in-zero"?
...........
Ainda é preciso subtrair um da TotalOrders()
Não entendo esta teimosia que diz que zero é mais conveniente
assim como é mais conveniente subtrair um do ArraySize.
Qual é o objetivo da conveniência?
Quem está forçando você a falar de "zeros"? Diga-o como quiser, os primeiros , por exemplo. Mas não se esqueça da indexação.
OrdensTotal() lhe dará 10, se o número de posições em aberto == 10. Se você subtrair então um, então você introduz um erro nos cálculos.
ArraySize() lhe dará 10 se o array tiver 10 células. Se você subtrair 1 depois disso (não para referência a uma célula por seu índice, mas para manipulações com o tamanho da matriz), você comete um erro nos cálculos.
O número de pedidos é dado a você no formato a que está acostumado. Se houver 10 deles, você receberá 10. E quando você se refere a um elemento de matriz por índice, você não deve esquecer de começar do zero.
for(int i=0; i<variables+constants; i++){if(i<variables){}else{}}
aqui é onde o significado físico da variável i é perdido
Eu não entendo como você pode dizer isso seriamente.
não é natural contar a partir do zero.
na antiga Babilônia costumavam contar por 12, mas os judeus espertos inventaram o sistema decimal porque há 10 dedos e todos ainda o usam.
os romanos chegaram a números terríveis, mas os árabes espertos roubaram números normais dos índios e isso pegou.
pessoas em todos os lugares contam a partir de 1 e apenas uma pequena porcentagem vive de forma diferente.
por exemplo int n=OrdersTotal();
seria bastante fácil e intuitivo para(i=1; i<=n; i++) {OrderSelect(i,.......);} // se a numeração fosse humana normal
e o significado físico da variável i é tão simples e claro quanto a luz solar: selecione a primeira ordem, selecione a segunda, a terceira... até chegar ao último
a qualquer momento, podemos verificar a variável i e por seu valor nos dizer com que ordem estamos trabalhando, sem nenhum turno
A função DisplayChart(int draw_bars) vazia, por exemplo, desenha as últimas barras draw_bars
para acessar a primeira barra no buffer de indicadores, você precisa subtrair 1: draw_bars-1
é apenas uma ação extra a cada vez e é doloroso lembrar-se disso
Por alguma razão, as casas nas ruas são numeradas a partir de 1
andares em edifícios (geralmente) a partir de 1
quartos com 1
Por que eles numeram os mandados em 0?
Pisos em edifícios? É uma questão de como. O que os russos chamam de "andar térreo", os alemães chamam de "erdgeschoss", os alemães chamam o primeiro andar de "erste stok". Na escola isso me deu um choque cultural, que depois passou - há muito do amigo de Horatio...
Os ingleses não têm 13 números em alguns lugares, seja em casas ou apartamentos.
As ordens não têm um zero tic-tac. E o fato de que a conta começa do zero, por isso é especificamente mencionada na documentação.
Se você quiser programar, programe de acordo com as regras dos programadores.