pta學生選課成績統計問題
❶ PTA程序設計30分的題是什麼難度
PTA
是The Parents-Teachers Association of的縮寫,
意思是父母- 老師互動,也就是中文的家長會
MCC
=MOTOR CONTROL CENTER 馬達控制中心
=瑪麗勒本板球俱樂部(Marylebone Cricket Club)
=Magnetic Card Control 磁性卡片控制;
Main Communication Center 主通信中心, 通信樞紐;
Main Control Console 主控制台;
Marylebone Cricket Club 馬利里本板球俱樂部[英];
Meteorological Communications Centre 氣象通訊中心;
Minor Cycle Counter短周期計數器;
Motor Control Center 發動機控制中心;
Multi-Channel Communications Control 多路通信控制;
Multi-Chip-Circuit多片電路
DCS是分散控制系統(Distributed Control System)的簡稱,國內一般習慣稱為集散控制系統。它是一個由過程式控制制級和過程監控級組成的以通信網路為紐帶的多級計算機系統,綜合了計算機(Computer)、通訊(Communication)、顯示(CRT)和控制(Control)等4C技術,其基本思想是分散控制、集中操作、分級管理、配置靈活、組態方便。DCS具有以下特點:
(1)高可靠性 由於DCS將系統控制功能分散在各台計算機上實現,系統結構採用容錯設計,因此某一台計算機出現的故障不會導致系統其它功能的喪失。此外,由於系統中各台計算機所承擔的任務比較單一,可以針對需要實現的功能採用具有特定結構和軟體的專用計算機,從而使系統中每台計算機的可靠性也得到提高。
(2)開放性 DCS採用開放式、標准化、模塊化和系列化設計,系統中各台計算機採用區域網方式通信,實現信息傳輸,當需要改變或擴充系統功能時,可將新增計算機方便地連入系統通信網路或從網路中卸下,幾乎不影響系統其他計算機的工作。
(3)靈活性 通過組態軟體根據不同的流程應用對象進行軟硬體組態,即確定測量與控制信號及相互間連接關系、從控制演算法庫選擇適用的控制規律以及從圖形庫調用基本圖形組成所需的各種監控和報警畫面,從而方便地構成所需的控制系統。
(4)易於維護 功能單一的小型或微型專用計算機,具有維護簡單、方便的特點,當某一局部或某個計算機出現故障時,可以在不影響整個系統運行的情況下在線更換,迅速排除故障。
(5)協調性 各工作站之間通過通信網路傳送各種數據,整個系統信息共享,協調工作,以完成控制系統的總體功能和優化處理。
(6)控制功能齊全 控制演算法豐富,集連續控制、順序控制和批處理控制於一體,可實現串級、前饋、解耦、自適應和預測控制等先進控制,並可方便地加入所需的特殊控制演算法。 DCS的構成方式十分靈活,可由專用的管理計算機站、操作員站、工程師站、記錄站、現場控制站和數據採集站等組成,也可由通用的伺服器、工業控制計算機和可編程式控制制器構成。 處於底層的過程式控制制級一般由分散的現場控制站、數據採集站等就地實現數據採集和控制,並通過數據通信網路傳送到生產監控級計算機。生產監控級對來自過程式控制制級的數據進行集中操作管理,如各種優化計算、統計報表、故障診斷、顯示報警等。隨著計算機技術的發展,DCS可以按照需要與更高性能的計算機設備通過網路連接來實現更高級的集中管理功能,如計劃調度、倉儲管理、能源管理等。
❷ c語言pta問題
位數越多用時越長這很正常。代碼演算法很恰當,已經很好了,但調用pow這樣的函數太頻繁,pow是double型運算,很費時。有幾點建議,你試試:(1)自己寫一個pow函數,只做整數的冪,這樣很省時;(2)多設個變數把每循環一次計算一次pow改為只計算一次,會省好多執行時間;(3)操作符用最省時的,如a=a+b;要比a+=b費時,所以宜用後者。給你改一個作參考,若沒有解決超時問題,權當我沒答。
代碼文本:
#include "stdio.h"
int mypow(int y,int x){
int s;
for(s=1;x>0;s*=y,x--);
return s;
}
int main(int argc,char *argv[]){
long int m,i,j,sum=0,yushu,k,n;
//int a[100];
scanf("%d",&m);
for(i=mypow(10,m-1),n=i*10;i<n;i++){
for(k=i*10,j=10;j<k;j*=10){
yushu=(i%j)*10/j;
sum+=mypow(yushu,m);
}
if(sum==i){
printf("%d ",i);
}
sum=0;
}
return 0;
}
❸ PTA題目:要求統計一個整型序列中出現次數最多的整數及其出現次數
還是有人沒注意到這題的坑在哪啊。
題目只是說最多提供1000個數字,並沒有給出這個數字的范圍。用「桶計數」不現實,因為給出的數字可能會一個億,而這么做本身就浪費空間,況且數組也不可能開到那麼大的長度。
就例題來講。
10個數字: 3 2 -1 5 3 4 3 0 3 2
次數: 0 0 0 1 0 2 0 3 1
數字: 3 2 -1 3 4 3 0 3 2
次數那裡是指相應數字前面出現的次數。比如,第四個數字3上面的1就是說前3個數字里有1個3,同樣第六個數字3上的2代表前面已經出現2次數字3了。就用這樣的方法就可以做出來了。
這是我自己寫的代碼,僅供參考:
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int count = 0, num = 0;
int[] m = new int[n]; //數字(如果范圍超過int可以設為long類型)
int[] h = new int[n]; //次數
for(int i=0; i<n; i++){
m[i] = sc.nextInt();
for(int j=i-1; j>=0; j--){
if(m[i]==m[j]){
h[i] = h[j] + 1;
break;
}
}
if(count<h[i]){
count = h[i];
num = m[i];
}
}
System.out.print(num+" "+(count+1));
❹ 在PTA上做題scanf函數總是出現這樣的問題,請高手指教
這個代碼在其它在線編譯的網站是可以正常運行的,可能跟默認的編譯器版設置有關。你這個警告權應該是指scanf的返回值沒有使用,你可以把scanf的結果賦下值試試,如下代碼:
intr=scanf("%d%d%d%d",&a,&b,&c,&d);
其它網站執行結果正常
另外PTA的讀者驗證碼從哪裡得到?
❺ pta的題自己代碼運行答案沒問題,提交顯示段錯誤,請高手指出錯誤
錯誤原因是,他要求輸入最多1000個整數,所以a數組開小了
數據的范圍也不內是0~99所以b數組容開100也不對
正確方法是,把a數組開到1000大小,排序然後統計,排完序後,同樣的數一定挨在一起
這樣就可以順序的統計了
❻ 關於PTA裡面程序設計的問題,題目簡單,細節太嚴,真不知道哪裡出錯了!求大佬解答!
很明顯 你沒有按照要求去做:
輸入格式:輸入在第一行給出兩個整數A和B(-100≤A,回B≤100),數字間以空格答分隔。
應該是
int a=-200,b=-200;
while(a>100 || b >100 || a<-100||b<-100)
{
scanf("%d %d",&a,&b);
輸出格式:在一行中輸出A乘以B的值。
應該是printf("%d ",a*b);
}
❼ python語言敲的PTA請幫忙看看以下有什麼問題
defpta(A:int,D:int)->int:
a=str(A)
d=str(D)
p=''
foriina:
ifi==d:
p+=d
returnint(p)
if__name__=='__main__':
a=int(input('請輸入整數A:(N位整數)'))
b=int(input('請輸入一個要尋找數專字B:'))
print('找到結果P是:'+str(pta(a,b)))
#運行屬測試:
#請輸入整數A:(N位整數)13564987987787
#請輸入一個要尋找數字B:7
#找到結果P是:7777
如果我沒理解錯的話,應該是這樣做吧。
❽ c語言數組問題pta
題目來要求找最長的字元自串,所以是使用strlen,而不是你用的strcmp, strcmp是比較是否相等。
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char* argv[])
{
int m; int i;
scanf("%d",&m);
char a[m][81];
for(i=0;i<m;i++) {
scanf("\n");
gets(a[i]);
}
char b[81];
strcpy(b,a[0]);
for(i=1;i<m;i++) {
if (strlen(a[i]) > strlen(b))
{
strcpy(b, a[i]);
}
}
printf("The longest is: %s\n", b);
}