函数——自制函数(c++)

news2024/11/19 9:33:23

今天进入自制函数。

自制函数,需要自己定义其功能。比如,设置一个没有参数没有返回值的积木,叫“aaa”。那么,如果想要运行“aaa”,就需要以下代码:

void aaa();                      告诉系统有“aaa”这个积木。

aaa();                           执行aaa的内容

void aaa()                      }
{                                     }
                                      }   定义aaa的作用    

                                      } (在“return;”上方黄色部分写“aaa”的内容)

         return;                }
}                                     }

加上基本框架并连起来就是:

#include <iostream>
using namespace std;
void aaa();
int main()
{
    aaa();
    return 0;
}
void aaa()
{
    
    return;
}

自制函数有多种类型,bool、int等都行,只要定义上即可。上方涂蓝的部分就是函数的类型,如果此函数没有参数也没有返回值,涂蓝部分就是void。函数有两个可有可无的部分,就是参数和返回值。上方代码涂红的地方是出来的结果——返回值。而上方代码涂绿的部分就是参数。括号里的参数就相当于输入的值,bool、int等都行。

话不多说,直接进题。

#include <iostream>
using namespace std;
bool aaa(int);
int main()
{
	for(int i = 1000;i<=3000;i++)
	{
		int a1 = i/100%10;
		int a2 = i/10%10;
		int a3 = i/1%10;
		int a = a1*100+a2*10+a3;
		int b = a2*10+a3;
		int c = a3;
		if(aaa(a)==true&&aaa(b)==true&&aaa(c)==true&&aaa(i)==true)
		{
			cout<<i<<endl;
		}
	}
	return 0;
}
bool aaa(int q)
{
	if(q==1) return false;
	if(q==2) return true;
	for(int j = 2;j*j<=q;j++)
	{
		if(q%j==0) return false;
	}
	return true;
}

#include <iostream>
using namespace std;
int aaa(int);
int main()
{
	for(int i = 100;i<999;i++)
	{
		int a = i/100%10;
		int b = i/10%10;
		int c = i/1%10;
		if(aaa(a)+aaa(b)+aaa(c)==i)
		{
			cout<<i<<endl;
		}
	}
	return 0;
}
int aaa(int q)
{
	int sum = 1;
	for(int j = 2;j<=q;j++)
	{
		sum = sum*j;
	}
	return sum;
}

#include <iostream>
using namespace std;
int aaa(int);
int main()
{
	int n;
	cin>>n;
	for(int i = 2;i<=n;i++)
	{ 
		int sum1 = aaa(i);
		int sum2 = aaa(aaa(i));
		if(aaa(sum2)==sum1&&aaa(sum1)==i&&sum1!=0&&sum2!=0)
		{
			cout<<sum2<<" "<<sum1<<endl; 
		}
	}
	return 0;
}
int aaa(int q)
{
	int sum = 0;
	for(int j = 2;j<q;j++)
	{
		if(q%j==0)
		{
			sum = sum+j;
		}
	}
	return sum;
}

#include <iostream>
using namespace std;
bool aaa(int);
int main()
{
	int n;
	cin>>n;
	int cnt = 0;
	for(int i = 1;i<=n;i++)
	{
		if(aaa(i)==true)
		{
			cnt++;
		}
	}
	cout<<cnt;
	return 0;
}
bool aaa(int q)
{
	if(q/10==0) return true;
	int t = q;
	int sum = 0;
	while(t!=0)
	{
		sum++;
		t = t/10;
	}
	t = q;
	for(int j = 1;j<=sum/2;j++)
	{
		int a1 = t/j%10;
		int t2 = 10;
		for(int k = 1;k<(sum-j);k++)
		{
			t2 = t2*10;
		}
		int a2 = t/t2%10;
		if(a1!=a2)
		{
			return false;
		}
	}
	return true;
}

歌德巴赫猜想
题目描述
任一个大于等于4的偶数都可以拆分为两个素数之和。
输入
一个整数n( 4 <= n <= 200 )
输出
将小于等于n的偶数拆分为2个质数之和,列出所有方案!
样例
输入复制
10
输出复制
4=2+2
6=3+3
8=3+5
10=3+7
10=5+5
#include <iostream>
using namespace std;
bool aaa(int);
int main()
{
	int n;
	cin>>n;
	for(int i = 4;i<=n;i = i+2)
	{
		int a[10000][2];
		int la = 0;
		for(int j = 1;j+j<=i;j++)
		{
			a[la][0] = j;
			a[la][1] = i-j;
			la++;
		}
		for(int j = 0;j<la;j++)
		{
			if(aaa(a[j][0])==true&&aaa(a[j][1])==true)
			{
				cout<<a[j][0]+a[j][1]<<"="<<a[j][0]<<"+"<<a[j][1]<<endl;
			}
		}
	}
	return 0;
}
bool aaa(int q)
{
	if(q==1) return false;
	if(q==2) return true;
	for(int k = 2;k*k<=q;k++)
	{
		if(q%k==0)
		{
			return false;
		}
	}
	return true;
}
​​​​​​​ ​​​​​​​

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1375695.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何从多个文件夹里各提取相应数量的文件放一起到新文件夹中形成多文件夹组合

首先&#xff0c;需要用到的这个工具&#xff1a; 百度 密码&#xff1a;qwu2蓝奏云 密码&#xff1a;2r1z 说明一下情况 文件夹&#xff1a;1、2、3里面分别放置了各100张动物的图片&#xff0c;模拟实际情况的各种文件 操作&#xff1a;这里演示的是从3个文件夹里各取2张图…

恒创科技:解决Windows服务器磁盘空间不足的问题

​  服务器硬盘的大小是决定空间是否充足的主要因素。但在日常使用中&#xff0c;服务器和网站备份会消耗大量存储空间&#xff0c;如果维护不当&#xff0c;最终将耗尽您的容量。同样&#xff0c;日志文件、临时文件和数据库可以在硬盘驱动器上或回收站中无休止地建立。当您…

MidTool的GPT-4:开启智能语言新纪元

MidTool平台上的GPT-4是由OpenAI开发的最新一代语言预测模型。与前一代GPT-3相比&#xff0c;GPT-4在理解深度、文本生成的连贯性和创造性方面都有了显著的提升。这意味着用户可以期待更加自然、更加精准的交流体验&#xff0c;以及更高质量的内容创作。 1. 无缝对话体验 在M…

高效构建Java应用:Maven入门和进阶(四)

高效构建Java应用&#xff1a;Maven入门和进阶&#xff08;四&#xff09; 四. Maven聚合和继承特性4.1 Maven工程继承关系4.2 Maven工程聚合关系 四. Maven聚合和继承特性 4.1 Maven工程继承关系 继承概念 Maven 继承是指在 Maven 的项目中&#xff0c;让一个项目从另一个项目…

使用 Docker 部署 Halo 博客系统

:::info 项目地址&#xff1a;https://github.com/halo-dev/halo ::: 一、Halo 介绍 1&#xff09;Halo 简介 Halo 是一款强大易用的开源建站工具&#xff0c;它让你无需太多的技术知识就可以快速搭建一个博客、网站或者内容管理系统。具备可插拔架构、主题套用、富文本编辑器…

05-微服务Sentinel流量哨兵

一、Sentinel介绍 1.1 什么是Sentinel 分布式系统的流量防卫兵&#xff1a;随着微服务的普及&#xff0c;服务调用的稳定性变得越来越重要。Sentinel以“流量”为切入点&#xff0c;在流量控制、断路、负载保护等多个领域开展工作&#xff0c;保障服务可靠性。特点&#xff1…

MyBatis实战指南(二):工作原理与基础使用详解

MyBatis是一个优秀的持久层框架&#xff0c;它支持定制化SQL、存储过程以及高级映射。那么&#xff0c;它是如何工作的呢&#xff1f;又如何进行基础的使用呢&#xff1f;本文将带你了解MyBatis的工作原理及基础使用。 一、MyBatis的工作原理 1.1 MyBatis的工作原理 工作原理…

Vue基础-搭建Vue运行环境

这篇文章介绍了在Vue.js项目中进行开发环境搭建的关键步骤。包括node.js安装和配置、安装Vue及Vue CLI工具、安装webpack模板、安装vue-router、创建Vue项目等步骤。这篇文章为读者提供了清晰的指南&#xff0c;帮助他们快速搭建Vue.js开发环境&#xff0c;为后续的项目开发奠定…

小汪,TCP连接和断连夺命6连问你可能扛得住?

目录 TCP三次握手连接和四次挥手断连的几处疑问 一、建立连接&#xff0c;为什么是三次握手&#xff0c;而不是二次握手&#xff1f; 二、为什么每次建立 TCP 连接时&#xff0c;初始化的序列号都要求不一样呢&#xff1f; 三、断开连接&#xff0c;为什么是四次握手&#x…

HarmonyOS 开发基础(八)Row和Column

HarmonyOS 开发基础&#xff08;八&#xff09;Row和Column 一、Column 容器 1、容器说明&#xff1a; 纵向容器主轴方向&#xff1a;从上到下纵向交叉轴方向&#xff1a;从左到右横向 2、容器属性&#xff1a; justifyContent&#xff1a;设置子元素在主轴方向的对齐格式…

30道JVM综合面试题详解含答案(值得珍藏)

1. 描述一下JVM加载Class文件的原理机制? Java中的所有类&#xff0c;都需要由类加载器装载到JVM中才能运行。类加载器本身也是一个类&#xff0c;而它的工作就是把class文件从硬盘读取到内存中。在写程序的时候&#xff0c;我们几乎不需要关心类的加载&#xff0c;因为这些都…

流程控制详解

1、Java流程控制 主要涉及三大流程控制&#xff1a;顺序、分支、循环 如下图&#xff1a; 1&#xff09;流程2 存在对用户名和密码的校验&#xff0c;是否为空&#xff0c;存在分支控制 2&#xff09;流程3 用户名和密码在数据库是否存在&#xff0c;存在分支控制 3&#xf…

ant design vue Tree组件叶子节点横向排列

antdesignvue的树形组件要实现组件叶子节点横向排列有点坑&#xff0c;没有 配置属性&#xff0c;需要自己想办法。 要实现的效果 看tree组件的dom结构&#xff0c;父元素flex竖向布局&#xff0c;子项不论节点层级都在同一层&#xff01;&#xff01;&#xff01; 难点在于想…

中级Python面试问题

文章目录 专栏导读1、xrange 和 range 函数有什么区别&#xff1f;2、什么是字典理解&#xff1f;举个例子3、元组理解吗&#xff1f;如果是&#xff0c;怎么做&#xff0c;如果不是&#xff0c;为什么&#xff1f;4、 列表和元组的区别&#xff1f;5、浅拷贝和深拷贝有什么区别…

SV-298XT IP网络广播板 SV-298XT-共公广播音频模块IP网络广播板

SV-298XT IP网络广播板 SV-298XT-共公广播音频模块IP网络广播板 SV-298XT网络广播模块是一款全数字网络型广播模组&#xff0c;核心部分采用了成熟的私有协议解决方案&#xff0c;性能稳定可靠。支持TCP、UDP、组播协议能针对当前服务器中不同的广播任务设置不同的广播传输方式…

DLT:dlt-daemon示例解析2

DLT&#xff1a;dlt-daemon示例解析 回顾一下上期第一个示例打印DLT日志的流程。 这次来分析第二个示例。 目录dlt-daemon/examples/example2/下有以下文件 CMakeLists.txt dlt_id.h example2.c example2.xml 其中example2.xml编译用不到&#xff0c;里面描述了一些程序的…

Elasticsearch聚合优化 | 聚合速度提升5倍!

1、聚合为什么慢&#xff1f; 大多数时候对单个字段的聚合查询还是非常快的&#xff0c; 但是当需要同时聚合多个字段时&#xff0c;就可能会产生大量的分组&#xff0c;最终结果就是占用 Elasticsearch大量内存&#xff0c;从而导致 OOM 的情况发生。 实践应用发现&#xff0…

git入门之本地操作

1、启动git命令输入 在想要建立仓库&#xff0c;建议的方式是在文件夹中右键单击&#xff0c;选择git bash here 2、初始化仓库命令&#xff1a;git init 3、查看仓库状态&#xff1a;git status 4、更新仓库特定文件&#xff1a;git add xxx 5、更新仓库所有文件&#xff1…

【机器学习】聚类算法(二)

五、基于密度的算法 5.1 DBSCAN 算法 import sys # 导入 sys 模块&#xff0c;用于访问系统相关的参数和功能 import os # 导入 os 模块&#xff0c;用于处理文件和目录 import math # 导入 math 模块&#xff0c;用于进行数学运算 import random # 导入 random 模块&#xff0…

JVM基础(5)——JVM垃圾回收算法

作者简介&#xff1a;大家好&#xff0c;我是smart哥&#xff0c;前中兴通讯、美团架构师&#xff0c;现某互联网公司CTO 联系qq&#xff1a;184480602&#xff0c;加我进群&#xff0c;大家一起学习&#xff0c;一起进步&#xff0c;一起对抗互联网寒冬 学习必须往深处挖&…