Salam bu kodu yazmışam ancaq bir problem var
#include <iostream> int main(){ double a,b; b=0; for(a=1;a>0.0000000000000000000000000000000000000005;a=a/2){ b=b+a; } std::cout<<b; }
Burada niyə 2 cixir? 0larin sayin artirib çoxaltsamda iki cixir axi 0 larin sayin çoxaltdiqda bir de 2-ə bolub ustunə gələcək amma hamisinda 2 yazir yoxsa mən nəyise səhv edirəm?
Verilmiş cavablar və yazılan şərhlər (1 cavab var)
2
Burda 2 çıxmağı normaldır. a-nı çoxlu sayda 2 böldükdən sonra alınan yeni a çox kiçik rəqəm olduğundan b-nin qiymətinə təsir etmir. Bu şəkildə kodu debug etsəniz, sizə aydın olacaq:
#include
using namespace std;
int main(){
double a,b;
b=0;
int count = 0;
for(a=1; a>0.0000000000000000000000000000000000000005; a=a/2){
b=b+a;
cout<<"a "<
Sual verin
Cavab verin