#创作计划# 数学讲解第一期-整数与整除
2025-08-19 08:52:24
发布于:上海
注:本期内容为上海新教材5年级、老教材6年级内容,但教材刚刚改过,导致五升六的同学们没有学到,所以我从这一章开始讲解(我用上海新教材来讲),我讲的可能与书上概念不太一样,但都是正确的。因为我学这个已经是亿万年之前了。
话不多说开始讲解,首先,我们需要搞清几个概念:整数、整除、因数、倍数、奇数、偶数、质数(课本里叫素数)、合数、分解素因数(也叫质因数)、公因数与最大公因数以及公倍数与最小公倍数。
一.整数与整除
1.整数
定义:正整数、零和负整数合称为整数,其中,正整数与零称为自然数(或非负整数),负整数与零称为非正整数,正整数与负整数称为非零整数。
2.整除
定义:若整数a除以整数b,商是整数,余数为零,叫做整除(判断口诀:三整一零)。
注:这里的整数只考虑正整数,不考虑零和负整数!
读法:a能被b整除 或 b能整除a。
读法口诀:有被则顺,无被则逆。
以下是一个小程序,判断了a是否能被b整除:
#include<bits/stdc++.h>
using namespace std;
int main()
{
ios::sync_with_stdio(false);
cin.tie(nullptr);
int a,b;
cin>>a>>b;
if(a%b==0)cout<<"yes";
else cout<<"no";
return 0;
}
(听取了AC君的建议附上代码)
小练习1:请写出能整除12的数。
【分析】本题考察能整除12的数,只需要一步步枚举(从1开始)。
【答案】1、2、3、4、6、12。
小练习2:请判断以下哪个选项符合第一个数能整除第二个数
A.24和12 B.6和36
【分析】根据“有被则顺,无被则逆”口诀,我们可以知道题目意思是第二个数除以第一个数商为整数,余数为零,故而可以找到答案。
【答案】B
二.因数与倍数
定义:若整数a能被整数b整除,则把a叫做b的倍数,b叫做a的因数(因数也叫约数)。
例:15是3的倍数,3是15的因数。
注:因数与倍数是相互依存的。
(这里过于简单就不附代码了)
小练习3:在什么条件下,四位数abcd(abcd上面有一横,我这里打不出来,表示千位为a,百位为b,十位为c,个位为d的四位数)是3的倍数?
【分析】根据位值原理,我们可以把abcd(再次强调上面有一横,不是连乘的意思)分解为1000a+100b+10c+d,进而再分解为(999a+99b+9c)+(a+b+c+d),因为前一部分绝对为3的倍数,所以若a+b+c+d为3的倍数,那么原四位数abcd也是3的倍数。
【答案】若a+b+c+d为3的倍数,那么原四位数abcd也是3的倍数。具体见解析。
根据上面练习,我们可以知道能被3整除的数的数字和也是3的倍数。
三.奇数与偶数
定义:在正整数中,2的倍数叫做偶数,不是2的倍数叫做奇数。
判断奇数和偶数代码见下:
#include<bits/stdc++.h>
using namespace std;
int main()
{
ios::sync_with_stdio(false);
cin.tie(nullptr);
int a;
cin>>a;
if(a%2==0)cout<<"偶数";
else cout<<"奇数";
return 0;
}
四.素数与合数
1.素数:在正整数中,只有1和它本身2个因数的数叫做素数(也叫质数)。
2.合数:在正整数中,有2个以上的因数的数叫做合数。
注:1既不是素数也不是合数。
3.一些归纳出的结论
(1)所有除2以外的素数都是奇数。
(2)所有除2以外的偶数都是合数。
(3)2是唯一的偶素数(最小的合数是4)。
4.100以内易混淆的合数
51=3* 17
57=3* 19
87=3* 29
91=7*13
以下是判断一个数是素数还是合数的函数:
bool f(int x)//懒得起英文单词函数了
{
if(x<=1)return false;
for(int i=2;i*i<=x;i++)//用i*i可以减少遍历次数
{
if(x%i==0)return false;
}
return true;
}//true是素数,false是合数
五.分解素因数
1.素因数:一个正整数的素数因数叫做这个正整数的素因数。
例:12的素因数是2,2,3(所有的都要写出来)。
素因数定理:一个正整数所有的素因数相乘等于这个正整数。
2.分解素因数
方法:口算法(口算不好的千万不要用)、短除法(正常方法)。(其实还有一种代码大法)
话不多说直接附上代码:
#include<iostream>
using namespace std;
bool f(int x)//我懒得起英文单词的时候默认用f
{
if(x<=1)
{
return false;
}
if(x==2)
{
return true;
}
for(int i=2;i*i<=x;i++)
{
if(x%i==0)
{
return false;
}
return true;
}
}
int main()
{
int n,t=0;
cin>>n;
int a[n+1]={0};
for(int i=2;i<=n;i++)
{
while(f(i)&&n%i==0)
{
a[t]=i;
n=n/i;
t++;
}
}
for(int i=0;i<t;i++)
{
cout<<a[i]<<endl;
}
return 0;
}
小练习4:把28分解素因数。
法1:口算法
【答案】28=2* 2* 7
法2:短除法
步骤:
2|28
|——
2|14
|——
%% 7
注:%为占位符,不需要管它(有一点不标准,请见谅)。
【答案】28=2* 2*7
就讲到这里,我把每个年级的一个单元分两期讲,下一期帖子我将继续讲述因数个数定理、公因数与最大公因数以及公倍数与最小公倍数,敬请收看!
注:如果有不对的地方欢迎提意见!
全部评论 14
@陈奕帆(求互关)@忘川秋裤@AAA秋褲批發lexora_哥我现在听从AC君意见把代码附上去了,你们帮我看看有没有问题(我改完第一期还要去把第二期写完)。
2025-08-19 来自 上海
1注:我每周三、七会发一期数学帖子(特殊情况除外)@陈奕帆(求互关)
2025-08-02 来自 上海
1okay
2025-08-03 来自 江苏
0
@AC君希望加精,多谢🙏!
2025-07-30 来自 上海
1d
2025-08-22 来自 上海
0d
2025-08-21 来自 上海
0d
2025-08-19 来自 上海
0ddd
2025-08-08 来自 浙江
0dd
2025-08-04 来自 浙江
0谢
2025-08-05 来自 上海
0
可以介绍一下有理数和无理数
2025-07-30 来自 江苏
02025-07-30 来自 江苏
0那是上海新教材六上第一章内容
2025-07-30 来自 上海
0我现在还在讲五六年级衔接,下一期讲这一期剩下的,后面还有两期讲分数,接着才是这个
2025-07-30 来自 上海
0
请输入文本2025-07-30 来自 浙江
0对,这“”2“”是斜体的,改成代码格式
2025-07-30 来自 江苏
0建议改成:
【答案】28=2*2*27
Markdown:【答案】28=2\*2\*27
2025-08-19 来自 浙江
0
建议使用LaTeX、Markdown排版
2025-07-30 来自 浙江
0LaTeX使用0
2025-07-30 来自 浙江
0多谢
2025-07-30 来自 上海
0
2025-07-30 来自 上海
0发完了,用了一小时的时间
2025-07-30 来自 上海
0
有意见请提出来,我将改正
2025-07-30 来自 上海
0
有帮助,赞一个