Двоеточие - это часть команды (оператора), который называется оператор присваивания. В данном контексте всегда используется два символа ":=". Команда присваивания y:=y-x означает, что берутся текущие значения переменных x и y, находится их разность, после чего результат записывается (говорят - "присваивается") переменной y. Например, если значение y было задано y:=20; а x:=1; то новое значение переменной y будет равно 20-1=19.
В команде x:=x*2 все аналогично. Берется текущее (установленное ранее) значение переменной x, умножается на 2, а результат этого умножения становится новым значением переменой x. Старое значение при этом безвозвратно теряется.
Они отличаются тем что переменной длины она работает но будет работать постоянно.
#include <iostream>
<span>#include <iomanip>
</span><span>#include <fstream>
</span><span>using namespace std;
</span>int main() {
<span> int n;
</span><span> float s=0;
</span><span> ifstream f;
</span><span> f.open("input.txt");
</span><span> while(!f.eof()) {
</span><span> f>>n;
</span><span> while (n>0) { s+=n%10; n=n/10; }
</span><span> }
</span><span> f.close();
</span><span> cout<<s<<endl;
</span><span> system("pause");
</span><span> return 0;
</span><span>}
</span>