Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/155.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在c+中创建数字模式(三角形数字)+;具有最小循环 我们被要求在C++中用min.循环生成三角形的No.1模式。三角形图案如下所示: ____1_____ ___2__3____ __4__5__6__ 7__8__9__10_C++_Loops_Iteration - Fatal编程技术网

在c+中创建数字模式(三角形数字)+;具有最小循环 我们被要求在C++中用min.循环生成三角形的No.1模式。三角形图案如下所示: ____1_____ ___2__3____ __4__5__6__ 7__8__9__10

在c+中创建数字模式(三角形数字)+;具有最小循环 我们被要求在C++中用min.循环生成三角形的No.1模式。三角形图案如下所示: ____1_____ ___2__3____ __4__5__6__ 7__8__9__10,c++,loops,iteration,C++,Loops,Iteration,我的代码: #include <iostream> using namespace std; int main() { int n=0, r=0, i=0; cout << "No. of rows: "; cin >> r; for( n=1; n<=r; n++) { for( i=1; i<=r-n; i++) { cout << " ";

我的代码:

#include <iostream>

using namespace std;
int main() {
    int n=0, r=0, i=0;
    cout << "No. of rows: ";
    cin >> r;

    for( n=1; n<=r; n++) {
        for( i=1; i<=r-n; i++) {
            cout << "  ";
        }
        for( i=(n*(n-1)/2)+1; i<=(n*(n+1)/2); i++ ) {
            if( i<10 )
                cout << " " << i << "  ";
            else
                cout << i << "  ";
        }
        cout << "\n";
    }
    return 0;
}
#包括
使用名称空间std;
int main(){
int n=0,r=0,i=0;
cout>r;

对于(n=1;n这完全是个人观点,但我认为使用公式实际上不会影响效率,因为您总是一次打印一个元素。因此总时间取决于您的输入长度,即
r(r+1)/2

我写了这篇文章,它看起来也很好,尽管这段代码中的逻辑是保持按顺序打印元素,并在需要时打断行。它只使用一个内部循环打印每行开头的空格。这是Ideone

intr;
cin>>r;//行数
int空格=r-1,行数=1;
int curcount=0;
对于(int i=1;i>1;i++){
如果(curcount==0){

对于(int j=0;j这完全是个人观点,但我认为使用公式实际上不会影响效率,因为您总是一次打印一个元素。因此总时间取决于您的输入长度,即
r(r+1)/2

我写了这篇文章,它看起来也很好,尽管这段代码中的逻辑是保持按顺序打印元素,并在需要时打断行。它只使用一个内部循环打印每行开头的空格。这是Ideone

intr;
cin>>r;//行数
int空格=r-1,行数=1;
int curcount=0;
对于(int i=1;i>1;i++){
如果(curcount==0){
对于(int j=0;j
  • 它是一个简单的增量数字金字塔,不需要任何特殊的公式。公式增加了程序的复杂性,因为需要更多的计算。尽量保持代码简单
  • 最简单的方法是:

    int main() {
    int num,i=1;
    cout<<"Enter Number of Rows";
    cin>>num;
     for(int r=1; r<=num; r++)
     {
      for(int space=1; space<=num-r; space++){
        cout<<"  ";
        }
      for(int c=1; c<=r; c++,i++){
       cout<<"  "<<i;
       }
      cout<<"\n";
     }
        return 0;
    }
    
    intmain(){
    int num,i=1;
    库特南;
    对于(int r=1;r
    
  • 它是一个简单的增量数字金字塔,不需要任何特殊的公式。公式增加了程序的复杂性,因为需要更多的计算。尽量保持代码简单
  • 最简单的方法是:

    int main() {
    int num,i=1;
    cout<<"Enter Number of Rows";
    cin>>num;
     for(int r=1; r<=num; r++)
     {
      for(int space=1; space<=num-r; space++){
        cout<<"  ";
        }
      for(int c=1; c<=r; c++,i++){
       cout<<"  "<<i;
       }
      cout<<"\n";
     }
        return 0;
    }
    
    intmain(){
    int num,i=1;
    库特南;
    
    对于(int r=1;r)“减少变量还是减少循环更好?”配置文件和see@ChrisBeck我们如何分析?@TimKrul,当然是使用分析程序!例如,您可以使用gprof。您可以通过使用
    std::string
    类来减少循环。查找它(尤其是如何创建重复字符的字符串)。“减少变量还是减少循环更好?”see@ChrisBeck我们如何分析?@TimKrul,当然是使用分析程序!例如,您可以使用gprof。您可以通过使用
    std::string
    类来减少循环。查找它(尤其是如何创建重复字符的字符串)。