C++基础知识点+案例解释(第九集)

举报
迈热 发表于 2022/04/28 19:28:23 2022/04/28
【摘要】 C++基础知识点+案例解释(第九集)

📋个人简介

📜个人简介 :
🎅 作者简介:大家好,我是迈热✌️
🌝 支持一下:点赞👍+收藏🌟+留言📪
📣 系列专栏:java基础,C++基础🍁
✉️格言:先把键盘敲烂再说💻往死里敲!🌞

🌞学习前的小唠叨

🌈🌈哈喽 兄弟萌! 我们都在想成为大佬的路上加油着👍
既然我们已经踏入了学习这一长路, 那么就把它做的让
自己满意为止💜 加油兄弟萌!!!!😝

在这里插入图片描述

@[TOC](目录)

🍄 前言

🍊这一期我们学习有关**C++for循环应用(**的知识点和案例🍊

🐳案例一:根据输入的行数n输出由*构成的‘V’字图形

🌱🌱用户输入正整数n,表示要输出的V字图形的行数。要求:每一行最左端第一组2个较上一行向右缩进1个字符位置;每行最右端第二组的2个较上一行向左缩进1个字符位置。例如,如果用户输入"5",程序输出:

在这里插入图片描述

🌱🌱上图中的第一行的最左端第1个在该行最左端字符位置,第五行的最左端第1个在距离该行最左端4个空格后,即第5个字符位置。最后一行的2个*后面不输出回车换行符。

🌱🌱本案例要求用for循环语句来实现。

💦1.1 案例一需求

  • 🍒🍒 需求:根据输入的行数n输出由*构成的‘V’字图形
  • 🍒🍒 案例思路:
    • 🌴 从键盘输入一个正整数来表示输出的行数
    • 🌴 通过for循环来编写V 图形
    • 🌴 输出返回结果

💦1.2 案例一代码演示

#include<iostream>
using namespace std;

int main()
{
    int n, bn, ln;

    // 从键盘输入一个int型数值
	cout<<"请输入一个数:"<<endl; 
    cin >> n;

    for (ln = 1; ln < n; ln++)
    {
        for (bn = 1; bn <=ln-1; bn++)
        {
            cout << " ";
        }
        cout << "**";
        for (bn = 1; bn <= 2 * (n - ln - 1); bn++)
        {
            cout << " ";
        }
        cout << "**" << endl;
    }
    for (bn = 1; bn <= n - 1; bn++)
    {
        cout << " ";
    }
    cout << "**" << endl;

}

			

💦1.3 案例一运行结果

  • 🍒🍒 编译结果为:

在这里插入图片描述

🐳案例二:判断一个不小于2的正整数是否为质数

🌱🌱质数,又称素数,指在一个大于1的自然数中,除了1和此整数自身外,无法被其他自然数整除的数(也可定义为只有1和本身两个因数的数)。

🌱🌱100以内的质数:2、3、5、7、11、13、17、19、23、29、31、37、41、43、47、53、59、61、67、71、73、79、83、89、97。

🌱🌱本案例要求用for循环语句来实现。

💦1.1 案例二需求

  • 🍒🍒 需求:判断一个不小于2的正整数是否为质数

  • 🍒🍒 案例思路:

    • 🌴 定义一个子函数 IsPrime
    • 🌴 从键盘输入一个int类型正整数
    • 🌴 通过方法来判断输入的数是否为质数
    • 🌴 调用子函数 IsPrime
    • 🌴 输出结果

💦1.2 案例二代码演示

#include <iostream>
using namespace std;

// 判断一个不小于2的正整数是否为素数
int IsPrime(int n)
{
    for(int i=2;i<n;i++)
    {
        if(n%i==0)
        {
            return false;
        }
        
    }
}

int main()
{
    int n;

    // 从键盘输入一个int型数值
	cout<<"请输入一个int型数值:"<<endl; 
    cin >> n;

    if (IsPrime(n))
    {
        cout << "Yes" << endl;
    }
    else
    {
        cout << "No" << endl;
    }
}

💦1.3 案例二运行结果

  • 🍒🍒 当输入正确时:

在这里插入图片描述

  • 🍒🍒 当输入不正确时:

在这里插入图片描述

🐳案例三:计算舍罕王共需要多少立方的麦子赏赐他的宰相

🌱🌱相传国际象棋是古印度舍罕王的宰相达依尔发明的。舍罕王十分喜爱象棋,决定让宰相自己选择何种赏赐,这位聪明的宰相指着8*8共64格的象棋说:陛下,请您赏给我一些麦子吧。就在棋盘的第1格放1粒,第2格放2粒,第3格放4粒,以后每一格都比前一格增加一位,依此放完棋盘一64格,我就感激不尽了。舍罕王让人扛了一袋麦子,他要兑现他的许诺。请问舍罕王共需要多少立方的麦子赏赐他的宰相。

🌱🌱本案例要求用for循环语句来实现。

💦1.1 案例三需求

  • 🍒🍒 需求:定义一个子函数,在子函数中编写计算舍罕王共需要多少立方的麦子赏赐他的宰相

  • 🍒🍒 案例思路:

    • 🌴 在子函数WheatNum 中通过for循环来编写代码
    • 🌴 调用子函数WheatNum
    • 🌴 输出相应结果

💦1.2 案例三代码演示

#include <iostream>
#include <cmath>
using namespace std;

// 计算舍罕王共需要多少立方的麦子赏赐他的宰相
double WheatNum ()
{
    double sum=0,a;
    for(double i=0;i<64;i++)
    {
        sum+=pow(2,i);
    }
    a=sum/(1.42*pow(10,8));
    return a;
}

int main()
{
    cout << WheatNum () << "立方米麦子。" << endl;
}

💦1.3 案例三运行结果

  • 🍒🍒 编译结果:

在这里插入图片描述

💻 结语

🍻🍻到这我们的任务就结束啦!!!🌝
感谢大家的阅读 如果在内容方面有什么问题的话可以
在评论区或私信告诉我吧
博主小要求🙏🙏 如果这段对大家有用的话 就给博主
一个免费的点赞👍+评论✉️ +收藏💻吧!!!
感谢大家啦💙💙💙

在这里插入图片描述

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。