C++ da problem

Salam c++ da bu kodu yazmişam

#include <iostream>

//Kvadrat funksiyasi

int kvadrat(int x){
	int html,php,b;
	for(html=0;html<x;html++){
	for(php=0;php<x;php++){
		std::cout<<"*";
	}
std::cout<<"\n";
}
}
//Baslangic
int main(){
int b,d,m,n;
std::cout<<"Kvadrat-1;Ucbucaq-2;Romb-3;\n";
std::cin>>b;
if(b==1){
	std::cout<<"Kvadratin terefi:";
	std::cin>>d;
	std::cout<<kvadrat(d);
}
}

1 yazib keçirik kvadrat hissəsinə orada məsələn 5 yaziriq tərəfi 5 olan kvadratin yaranmasi ucun kodda problem yoxdur ancaq axirda 10 yazilir bunun səbəbi nədir? necə edə bilərəmki o 10 yazilmasin?


Kateqoriya: Sual . , . Qısa keçid.

Verilmiş cavablar və yazılan şərhlər (8 cavab var)

(23:42, 15/04/2014 ) #39584

10 hesablamanın nəticəsidi. və bu stəri silərək nəticəni ekana yazdırmaya bilərsiz.
Ancaq bu sətir silinsə hesabın nəticəsi bilinməyəcək. Çünki kvadrat
funksiyasının nəticəsi birbaşa ekrana çap edilir. Əgər hesabın nəticəsi lazımdırsa bu nəticəni hansısa
dəyişəndə saxlayın

std::cout<

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

    (19:59, 16/04/2014 ) #39607

    Hansi hesablamanin? Butun hallarda 10 yazilir ne daxiletsem 10 yazilir

    Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

      (21:52, 16/04/2014 ) #39613

      Onda yazdığım sətrin başlanğıcına oxşar sətirləri bir-bir silərək yoxlayın. Ancaq o sətirlə ekrana məlumat çap edir

      Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(08:57, 17/04/2014 ) #39627

Salam sizin kodda yanlışlıq var, çünki siz kvadrat funksiyasın int tipli elan edirsiniz, lakin funksiya daxilində heç bir return operatorundan istifadə etmirsiniz. Belə halda kompiyator sizə kompilyasiya səhvi göstərməlidir. İstənilən halda kompilyasiya etsəniz belə proqramın icrası zamanı sonda 10, 20 və ya istənilən digər bir ədədin çap olunması normaldır. Səbəb sizin ən son yazdığınız koddadır:
std::cout<“nəsə” çap eləmək üçün istifadə olunur, İndiki halda kvadrat funksiyasının bilinməyən nəticəsin. Səhv məhs burdadır.
Səhvi özünüz düzəltməyiniz üçün mən hələlik kodun düzgün variantın yazmıram, alınmasa deyərsiz.
Bir də ki əgər funksiya heç bir nəticə qaytarmalı deyilsə onu void tipi ilə elan etmək məqsədəuyğundur. Misal üçün kvadrat funskyası heç bir nətcə qayratmır, sadəcə ekranda kvadrat çəkir.

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

    (13:25, 17/04/2014 ) #39637

    Yox mən düzəldə billmirəm zəhmət olmasa kodu yazardızda

    Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

      (14:00, 17/04/2014 ) #39639

      Sizin tərtib etdiyiniz

      kvadrat()

      funksiyası icra olunan zaman ekranda tələb olunan ölçüdə kvadrat çəkir. Siz həmin funksiyanı düzgün şəkildə çağırmalısınız. Funksiyanı çağırmaq üçün onun adını yazıb, funksiyaya ötürülməli parametrləri mötərizə daxilində göstərmək lazımdır. Misal üçün yuxarıda tərtib etdiyiniz koda əsasən

      kvadrat(5);

      yazsaq ekranda uzunluğu 5,

      kvadrat(10);

      yazsaq uzunluğu 10 olan kvadrat çəkilər. Bununlada iş bitir. kvadrat() funksiyasını çağırmaq üçün cout -dan istifadə eləmək lazım deyil. Misal üçün siz kvadrat funksiyasına aşağıdakı kimi müraciət edirsiniz
      std::cout<

      Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

      (17:48, 17/04/2014 ) #39650

      Cox sağolun amma mənə yenədə sirli qaldıki niyə coutla çağıranda o 10 çap olunur nəysə yəqin onunda bir səbəbi var birdən sizdən xahiş edirəm əgər imkan varsa ilkaddimlara mouse hereketleri ekran olculerine aid ders hazırlayardızda

      Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(10:40, 18/04/2014 ) #39673

Funksiyaların çağırılması, funksiyalara parametr ötürülməsi və funksyanın qiymət qaytarması Calling Convention Çağrılma Razılaşması adlandırılan qaydalardan istifadə edir. Misal üçün funksiyanın qaytardığı qiymət yaddaş, stek, yoxsa reqistrlərdə saxlanılmalıdır. Hal-hazırda bir çox kompilyatorlar C Calling Convention – CDECL – C declaration -dan istifadə edir . CDECL -a əsasən kiçik ölçlü nəticələr %eax reqistri vastəsilə qaytarılır. kvadrat funksiyasının tipi int olduğundan onun da nəticəsi %eax reqistrinə yerləşdirilir. Əgər siz funksiyanın daxilində return operatoru ilə hansısa nəticə qaytarsanız, misal üçün return 34; onda həmin nəticə ekranda çap olunar. Amma siz return operatorundan istifadə etmədiyinizə görə funksiya qayıdan zaman nəticə olaraq %eax reqistrinə olan məlumat götürülür. Prosessorun reqistrlərinin qiyməti isə proramın icrası zamanı daima dəyişir və konkret hansı qiymət alacağın demək olmaz. Bu 10-da ola bilər , istənilən başqa qiymət də.
Bu barədə dafa ətraflı məlumat almaq üçün assmbler dilini örgənmək lazımdır. link

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

Bu suala aid öz sualım var:
Sual verin
Bu suala cavab vermək istəyirəm:
Cavab verin

Cavab verin


Cavab yazmaq üçün lütfən sağ sütundan və ya buradan hesaba daxil olun.

Üzvlər üçün giriş

Qeydiyyat

Elan qutusu

Son cavablar və şərhlər

Cavablar AI cavab verdi - səsli kitab saytında müəllif hüquqları (34 gün əvvəl)

E. Hacı cavab verdi - səsli kitab saytında müəllif hüquqları (34 gün əvvəl)

evonline.az cavab verdi - Mahni axtariram, azerbaycanin klipi idi. (39 gün əvvəl)

Cənab cavab verdi - Abune kodu - qaz (52 gün əvvəl)

nihatt cavab verdi - Aztelekomun Huawei GPON modeminin login və şifrəsi (69 gün əvvəl)

Mesud cavab verdi - C++ aid məsələ (85 gün əvvəl)

Toofiq cavab verdi - Abune kodu - qaz (86 gün əvvəl)

Toofiq cavab verdi - Mahni axtariram, azerbaycanin klipi idi. (86 gün əvvəl)

selef cavab verdi - gömrük bağlamanı saxladı (104 gün əvvəl)

walkingdead4 cavab verdi - Niqodnilik haqqında yardım ederdiz (120 gün əvvəl)

Devequsu cavab verdi - Niqodnilik haqqında yardım ederdiz (121 gün əvvəl)

E. Hacı cavab verdi - Manual QA vs Wordpress (137 gün əvvəl)

SN cavab verdi - .az domaini whois serveri niyə işləmir? (181 gün əvvəl)

byshako cavab verdi - .az domaini whois serveri niyə işləmir? (182 gün əvvəl)

byshako cavab verdi - .az domaini whois serveri niyə işləmir? (182 gün əvvəl)

Software Developer - 616 xal

E. Hacı - 610 xal

Onar Alili - 526 xal

Dilsuz - 448 xal

Cabbarov Sübhan - 434 xal

Maqa - 346 xal

Ruslan Butdayev - 328 xal

Namiq Bəndəli - 297 xal

U.Tarlan - 244 xal

Meherremoff - 234 xal

Sistemə daxil olmuş 23348 sualdan 92%-dən çoxu cavablandırılmışdır.

Proyekt haqqında

E-Haci.net istehsalı. © 2010-2026