2016-04-30 2 views
-4
#include <iostream> 
    using namespace std; 
    void bi(int a); 
    int main() 
    { 
     // here is the issue how do start a loop, where i want the answer from 16 to 31 numbers 
     int a=0; 
     cout<<"Baum-Sweet Sequence From 16 to 31 \n"; 
     for(int j=a;j>16 && j<31;j++) 
     { 
      cout<<j; 
     } 
     bi(a); 
    system("Pause"); 
    } 
    // Rest is working properly 
    void bi(int a) 
    { 
     int myArr[15],i=0,f=0,n=0; 
     for (int h = 0 ; h <= a; h++) 
     { 
      int num = h; 
      for (i = 0 ; i < 4 ; i++) 
      { 
       myArr[i] = num%2; 
       num = num/2; 
      } 
      for (int t = 0 ; t < 4 ; t++) 
      { 
       if (myArr[t]%2==0) 
        f++; 
      } 

      if (f%2==0) 

       cout << " = " << 1; 
      else 
       cout << " = " << 0; 
      cout <<endl; 
     } 
    } 

i zeigen wollen, um die Sequenz 16-31 Dezimalzahl helfen konnte, aber es ist nicht zeigt: \ konnte jedermann helfen Sie mir hierich will die Sequenz ftom 16 bis 31 Dezimalzahl zeigen, aber es ist nicht zeigt: mir jemand hier aus

+0

Was soll Ihr Code tun? Und was glauben Sie, wäre das Ergebnis von 'int j = a; j> 16 & & j<31; j ++ 'wäre, wenn' j == 0 ', wie es wäre, wenn Sie ihm' a' zuweisen? –

Antwort

0

Ihr Problem ist, dass man j auf 0 gesetzt, dann aber eine Bedingung für die Schleife machen, dass es nur dann, wenn j ausgeführt wird (das ist auf a), ist größer als 16

Das erste, was zu tun ist, machen Sie die Schleife Bedingungen:

for (int j = 16; j <= 32; j++) 
1

In der for-Schleife ist ein Fehler aufgetreten.

Die for-Schleife besteht aus drei durch ein Semikolon getrennten Teilen.

for (INITIALIZATION; CONDITION; AFTERTHOUGHT) 
{ 
    // Source code for the for-loop's body 
} 
  • Der erste Teil initialisiert die Variable (z.B. "int j = 16;" bedeutet, dass durch die Variable j Sie von 16 zu zählen beginnen);
  • Der zweite Teil prüft eine Bedingung und beendet die Schleife, wenn sie falsch ist (z. B. j < = 31 bedeutet, dass sie die Schleife beendet, wenn j den Wert 31 hat);
  • Der dritte wird einmal jedes Mal durchgeführt, wenn die Schleife endet und dann wiederholt (z. B. bedeutet j ++, dass bei jeder Iteration der Schleife j um 1 inkrementiert wird).

Jede Iteration führt den Code im Rumpf der for-Schleife aus.

In Anbetracht dessen, dass Sie die Bi-Funktion für jeden Wert von 16 bis 31 aufrufen möchten, sollte Ihr for-Schleifenkörper bi (j) enthalten. Ihr Haupt sollte wie der folgende Code geändert werden:

int main() 
{ 
    cout<<"Baum-Sweet Sequence From 16 to 31 \n"; 
    for(int j=16;j<=31;j++) 
    { 
     cout<<j; 
     bi(j); 
    } 
    system("Pause"); 

    return 0; 
    } 
Verwandte Themen