C++ 玩轉素數(前方高能哦)
以下均為多組輸入:
1. 判斷一個數是否為素數,是則輸出YES,不是則輸出NO
原始碼:
#include <iostream> #include <cmath> using namespace std; int main() { int i,n; int flag; while(cin>>n) { if(n<=0 || n==1) //負數、0和1都不是素數 cout<<"NO"<<endl; else { flag=0; for(i=2;i<n;i++) { if(n%i==0) { flag++; break; } } if(flag==0) { cout<<"YES"<<endl; } else { cout<<"NO"<<endl; } } } return 0; }
程式截圖:
2. 求m和n之間的素數(輸出個數和具體的素數,包含m和n,mn均為正整數)
原始碼:
#include <iostream> #include <cmath> using namespace std; int main() { int i,j,k; int m,n; int a[1000],t; //存素數 int x; //每x個換一行 while(cin>>m>>n) { cin>>x; t=0; //存素數陣列初始下標賦值0 for(i=m;i<=n;i++) { k=sqrt(i); for(j=2;j<=k;j++) { if(i%j==0) { break; } } if(j>=k+1) { a[t]=i; t++; } } cout<<m<<"和"<<n<<"之間的素數個數為:"<<t<<endl; for(i=0;i<t;i++) { if((i+1)%x==0) cout<<a[i]<<endl; else cout<<a[i]<<" "; } cout<<endl; } return 0; }
程式截圖:
3. 輸入k(k為正整數且k<=10000),求出第k個素數
原始碼:
#include <iostream> #include <cmath> using namespace std; int main() { int i,j,k; int flag; int a[15000],t; //存素數 int kk; //第kk個 while(cin>>kk) { t=0; //存素數陣列初始下標賦值0 for(i=2;i<=110000;i++) { k=sqrt(i); for(j=2;j<=k;j++) { if(i%j==0) { flag++; break; } } if(j>=k+1) { a[t]=i; t++; } } cout<<a[kk-1]<<endl; } return 0; }
程式截圖:
4. 求m和n之間的迴文素數(輸出個數和具體的素數,包含m和n)
原始碼:
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int i,j,k;
int m,n;
int a[1000],t; //存素數
int b[1000],tt; //存迴文素數
int x; //每x個換一行
int turn;
int originali;
while(cin>>m>>n)
{
cin>>x;
t=0,tt=0; //兩陣列初始下標賦值0
for(i=m;i<=n;i++)
{
k=sqrt(i);
for(j=2;j<=k;j++)
{
if(i%j==0)
{
break;
}
}
if(j>=k+1)
{
a[t]=i;
t++;
}
}
for(i=0;i<t;i++)
{
turn=0;
originali=a[i];
while(a[i]!=0)
{
turn=turn*10+a[i]%10;
a[i]/=10;
}
if(turn==originali)
{
b[tt]=originali;
tt++;
}
}
cout<<m<<"到"<<n<<"之間的迴文素數數目為:"<<tt<<endl;
for(i=0;i<tt;i++)
{
if((i+1)%x==0)
cout<<b[i]<<endl;
else
cout<<b[i]<<" ";
}
cout<<endl;
}
return 0;
}
程式截圖:
相關推薦
C++ 玩轉素數(前方高能哦)
以下均為多組輸入: 1. 判斷一個數是否為素數,是則輸出YES,不是則輸出NO 原始碼: #include <iostream> #include <cmath> using namespace std; int main() { int i,n;
高併發、低延遲之C#玩轉CPU快取記憶體(附示例)
寫在前面 好久沒有寫部落格了,一直在不斷地探索響應式DDD,又get到了很多新知識,解惑了很多老問題,最近讀了Martin Fowler大師一篇非常精彩的部落格The LMAX Architecture,裡面有一個術語Mechanical Sympathy,姑且翻譯成軟硬體協同程式設計(Hardware an
.NET高效能程式設計之C#玩轉CPU快取記憶體(附示例)
寫在前面 好久沒有寫部落格了,一直在不斷地探索響應式DDD,又get到了很多新知識,解惑了很多老問題,最近讀了Martin Fowler大師一篇非常精彩的部落格The LMAX Architecture,裡面有一個術語Mechanical Sympathy,姑且翻譯成軟硬體協同程式設計(Hardware a
打碼(C語言)常見粗心小錯誤 (前方高能,一定要點)
打碼(C語言)常見粗心小錯誤 標籤(空格分隔): 部落格 目錄 1.前言 小萌新們是不是經常打完碼之發現程式執行達不到自己的效果,然後自己用大腦執行的時候發現完全沒有問題,然後發截圖給TA,最後發現原來是自己一些粗心的小問題導致程式
玩轉webpack(二):webpack的核心對象
外部 工具 概念 優化 split 繼承 commonjs direct 學習 歡迎大家前往雲+社區,獲取更多騰訊海量技術實踐幹貨哦~ 作者介紹:陳柏信,騰訊前端開發,目前主要負責手Q遊戲中心業務開發,以及項目相關的技術升級、架構優化等工作。 前言 webpack 是一個強
玩轉python(5)生成器的原理
turn eval python解釋器 生命周期 固定 eva AR 返回 函數的參數 函數的調用滿足“後進先出”的原則,也就是說,最後被調用的函數應該第一個返回,函數的遞歸調用就是一個經典的例子。顯然,內存中以“後進先出”方式處理數據的棧段是最適合用於實現函數調用的載體,
玩轉python(6)協程
它的 代碼 循環 機制 協程 轉移 多個 來看 函數 多任務系統一般都需要解決一個問題:多個任務如何調度。搶占式調度就是一種很常見的任務調度機制。以單核模式下的進程調度為例,一個進程處於運行狀態,其他的處於就緒隊列,等到當前運行的進程放棄CPU的使用權,系統將CPU立刻分配
玩轉python(7)python多協程,多線程的比較
用戶體驗 time() cut 過程 RR 至少 執行 結果 關鍵字 前段時間在做一個項目,項目本身沒什麽難度,只是數據存在一個數據接口服務商那兒,這就意味著,前端獲取數據需要至少兩次http請求,第一次是前端到後端的請求,第二次是後端到數據接口的請求。有時,後端接收到前端
C語言判斷素數(求素數)(兩種方法)(第二種沒看懂Kkkkk有空一定搞明白)(非原創)
素數又稱質數。所謂素數是指除了 1 和它本身以外,不能被任何整數整除的數,例如17就是素數,因為它不能被 2~16 的任一整數整除。 思路1):因此判斷一個整數m是否是素數,只需把 m 被 2 ~ m-1 之間的每一個整數去除,如果都不能被整除,那麼 m 就是一個素數。 思路2):另
如何玩轉 Linux(篇一)
為什麼使用Linux window+tomcat 僅限於web環境: window: 1 window程序比較多,會大量的消耗資源和cpu 因為伺服器不是每天關機的,用window來部署,會大量消耗資源,越執行越卡 2 window對於高
C語言中綴轉字尾(棧的實現)
#include<stdio.h> #include<stdlib.h> #include<string.h> #define maxsize 20 typedef struct st2 { int top; char str[maxsize];
玩轉SpringCloud(F版本) 四.路由閘道器(zuul)
本篇文章基於: 四.路由閘道器(zuul) 在微服務架構中,需要幾個基礎的服務治理元件,包括服務註冊與發現、服務消費、負載均衡、斷路器、智慧路由、配置管理等,由這幾個基礎元件相互協作,共同組建了一個簡單的微服務系統。 在Spring Cloud微服務系統中,一種常見的負載均衡方式
玩轉MySQL(1)-----安裝MySQL
windows下mysql免安裝配置 1、 下載mysql免安裝壓縮包 下載mysql-5.6.22-winx64.zip 解壓到本地D:\mysql-5.6.22-winx64 2、 修改配置檔案 複製my-default.ini為my.ini 檔案 3、
手把手教你如何玩轉面試(Web知識)
本篇是講解關於JavaWeb崗位面試方面的一些對於Web知識的整理,當然,不只是需要知道這個方面的內容,還需要掌握其他方面的知識,我都根據自己的經歷來進行了整理,方便大家進行系統化的學習,只有多複習多研究,才能對技術有更好的掌握,才能拿到更好的offer。 下面是
手把手教你如何玩轉面試(資料庫)
本篇是講解對於資料庫知識的整理,當然,不只是需要知道這個方面的內容,還需要掌握其他方面的知識,我都根據自己的經歷來進行了整理,方便大家進行系統化的學習,只有多複習多研究,才能對技術有更好的掌握,才能拿到更好的offer。 下面是其他方面的知識點,歡迎大家進行瀏覽
手把手教你如何玩轉面試(作業系統)
本篇是講解關於JavaWeb崗位面試方面的一些對於作業系統知識的整理,當然,不只是需要知道這個方面的內容,還需要掌握其他方面的知識,我都根據自己的經歷來進行了整理,方便大家進行系統化的學習,只有多複習多研究,才能對技術有更好的掌握,才能拿到更好的offer。
玩轉OpenVswitch(一):埠與網橋
一、準備工作 作業系統:ubuntu 18.04 docker: 18.06.1-ce 要想在自己筆記本上進行較為複雜的網路拓撲模擬,除了藉助ovs,還需要有docker這個神器,docker安裝就不贅述了,貼個連結: 二、基本操作 1、網橋的增、刪、查 增
手把手教你如何玩轉面試(作業系統) PCB IPC
手把手教你如何玩轉面試(作業系統) 2018年10月18日 15:57:01 Cs_hnu_scw 閱讀數:852 版權宣告:本文為博主原創文章,未經博主允許不得轉載。 https://blog.csdn.net/Cs_hnu_scw/article/details/79
玩轉postman(一)-----基礎
postman的GUI介面以及各個元件介紹 主介面如下 開啟postman的GUI介面以及各個元素元件介紹 分為下三部分: 1、Head navigation bar (頭部導航欄):此部分有以下選項內容需要了解: (1)New(新建按鈕):可以用來新建集合、請求、mock服務、監聽器、測試環境
SQL Server調優系列玩轉篇(如何利用查詢提示(Hint)引導語句執行)
前言 前面幾篇我們分析了關於SQL Server關於效能調優的一系列內容,我把它分為兩個模組。 第一個模組注重基礎內容的掌握,共分7篇文章完成,內容涵蓋一系列基礎運算演算法,詳細分析瞭如何檢視執行計劃、掌握執行計劃優化點,並一一列舉了日常我們平常所寫的T-SQL語句所會應用的運算子。我相信你平常所寫的T-