PASCAL基本競賽輔導(dǎo)習(xí)題及解析一_第1頁
PASCAL基本競賽輔導(dǎo)習(xí)題及解析一_第2頁
PASCAL基本競賽輔導(dǎo)習(xí)題及解析一_第3頁
PASCAL基本競賽輔導(dǎo)習(xí)題及解析一_第4頁
PASCAL基本競賽輔導(dǎo)習(xí)題及解析一_第5頁
免費(fèi)預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、PASCA基本競賽輔導(dǎo)習(xí)題及解析(一)1、期未來臨了,班長小Q決定將剩余班費(fèi)X元錢,用于購買若干支鋼筆獎勵給一些學(xué)習(xí)好、表現(xiàn)好的同學(xué)。已知商店里有三種鋼筆,它們的單價(jià)為6元、5元和4元。小Q想買盡量多的筆(鼓勵盡量多的同學(xué)),同時他又不想有剩余錢。請您編一程序,幫小Q制訂出一種買筆的方案。分析:對于以上的實(shí)際問題,要買盡量多的筆,易知都買4元的筆肯定可以買最多支筆。因此最多可買的筆為xdiv4支。由于小q要把錢用完,故我們可以按以下方法將錢用完:若買完xdiv4支4元錢的筆,還剩1元,則4元錢的筆少買1支,換成一支5元筆即可;若買完xdiv4支4元錢的筆,還剩2元,則4元錢的筆少買1支,換成一

2、支6元筆即可;若買完xdiv4支4元錢的筆,還剩3元,則4元錢的筆少買2支,換成一支5元筆和一支6元筆即可。從以上對買筆方案的調(diào)整,可以看出筆的數(shù)目都是xdiv4,因此該方案的確為最優(yōu)方案。源程序如下:programpen;vara,b,c:integer;a,b,c分別表示在買筆方案中,6元、5元和4元錢筆的數(shù)目x,y:integer;x,y分別表示剩余班費(fèi)和買完最多的4元筆后剩的錢beginwrite('x=');readln(x)輸入xc:=xdiv4;4元筆最多買的數(shù)目y:=xmod4;求買完c支4元筆后剩余的錢數(shù)ycaseyof0:begina:=0;b:=0;end

3、;1 :begina:=0;b:=1;c:=c-1;end;2 :begina:=1;b:=0;c:=c-1;end;3 :begina:=1;b:=1;c:=c-2;end;end;writeln('a=',a,'b=',b,'c=',c);end.2、求N!=1*2*3*N,這里N不大于10。分析:程序要先輸入N,然后從1累乘到No程序如下:varn,i:integer;i為循環(huán)變量S:longint;s作為累乘器beginwrite('Entern=');readln(n);輸入ns:=1;fori:=2tondo從2至Un

4、累乘到s中s:=s*i;writeln(n,'!=',s);輸出n!的值end.3、求恰好使s=1+1/2+1/3+1/n的值大于10時n的值。分析:"恰好使s的值大于10”意思是當(dāng)表達(dá)式s的前n-1項(xiàng)的和小于或等于10,而加上了第n項(xiàng)后s的值大于10。從數(shù)學(xué)角度,我們很難計(jì)算這個n的值。故從第一項(xiàng)開始,當(dāng)s的值小于或等于10時,就繼續(xù)將下一項(xiàng)值累加起來。當(dāng)s的值超過10時,最后一項(xiàng)的項(xiàng)數(shù)即為要求的no程序如下:vars:real;n:integer;n表示項(xiàng)數(shù)begins:=0.0;n:=0;whiles<=10do當(dāng)s的值還未超過10時beginn:=n+1

5、;項(xiàng)數(shù)加1s:=s+1/n;將下一項(xiàng)值累加到send;writlen('n=',n);輸出結(jié)果end.4、求兩個正整數(shù)m和n的最大公約數(shù)。分析:求兩個正整數(shù)的最大公約數(shù)采用的輾轉(zhuǎn)相除法求解。以下是輾轉(zhuǎn)的算法:分別用m,n,r表示被除數(shù)、除數(shù)、余數(shù)。求m/n的余數(shù)r.若r=0,則n為最大公約數(shù).若rw0,執(zhí)行第步.將n的值放在m中,將r的值放在n中.返回重新執(zhí)行第步。程序如下:programex4_4;varm,n,a,b,r:integer;beginwrite('Inputm,n:');readln(m,n);a:=m;b:=n;r:=amodb;whiler

6、<>0dobegina:=b;b:=r;r:=amodb;end;writeln('Thegreatestcommondivideis:',b:8);end.5、輸入4名學(xué)生數(shù)學(xué)、物理、英語、化學(xué)、pascal五門課的考試成績,求出每名學(xué)生的平均分,打印出表格。分析:用二維數(shù)組a存放所給數(shù)據(jù),第一下標(biāo)表示學(xué)生的學(xué)號,第二個下標(biāo)表示該學(xué)生某科成績,如ai,1、ai,2、ai,3、ai,4、ai,5分別存放第i號學(xué)生數(shù)學(xué)、物理、英語、化學(xué)、pascal五門課的考試成績,由于要求每個學(xué)生的總分和平均分,所以第二下標(biāo)可多開兩列,分另存放每個學(xué)生5門成績和總分、平均分。源程序

7、如下:programex5_4;vara:array1.4,1.7ofreal;i,j:integer;beginfillchar(a,sizeof(a),0);函數(shù)fillchar用以將a中所有元素置為0writeln('Enter4studentsscore');fori:=1to4dobeginforj:=1to5do讀入每個人5科成績beginread(ai,j);讀每科成績時同時統(tǒng)計(jì)總分ai,6:=ai,6+ai,j;end;readln;ai,7:=ai,6/5;求平均分end;輸出成績表writeln('No.Mat.Phy.Eng.Che.Pas.Tot

8、.Ave.');fori:=1to4dobeginwrite(i:2,'');forj:=1to7dowrite(ai,j:9:2);writeln;end;end.6、輸入一串字符,字符個數(shù)不超過100,且以"."結(jié)束。判斷它們是否構(gòu)成回文。分析:所謂回文指從左到右和從右到左讀一串字符的值是一樣的,如12321,ABCBA,AA等。先讀入要判斷的一串字符(放入數(shù)組letter中),并記住這串字符的長度,然后首尾字符比較,并不斷向中間靠攏,就可以判斷出是否為回文。源程序如下:programex5_5;varletterarray1.100ofchar

9、;i,j:0.100;ch:char;begin讀入一個字符串以'.'號結(jié)束write('Inputastring:');i:=0;read(ch);whilech<>'.'dobegini:=i+1;letteri:=ch;read(ch)end;判斷它是否是回文j:=1;while(j<i)and(letterj=letteri)dobegini:=i-1;j:=j+1;end;ifj>=ithenwriteln('Yes.')elsewriteln('No.');end.7、(字符串)

10、對給定的10個國家名,按其字母的順序輸出。分析:程序中,當(dāng)執(zhí)行到ifcnamek>cnamej時,自動將cnamek串與cnamej串中的每一個字符逐個比較,直至遇到不等而決定其大小。這種比較方式是計(jì)算機(jī)中字符串比較的一般方式。程序如下:programex8_3;vari,j,k:integer;t:string20;cname:array1.10ofstring20;beginfori:=1to10doreadln(cnamei);fori:=1to9dobegink:=i;forj:=i+1to10doifcnamek>cnamejthenk:=j;t:=cnamei;cnam

11、ei:=cnamek;cnamek:=t;end;fori:=1to10dowriteln(cnamei);end.8、讀入5個學(xué)生的學(xué)號和成績,計(jì)算他們的平均分,若比平均分高1。分的等第為A,若比平均分高小于1。分的等地為B,若低于平均分,則等第為C,輸出他們的成績和等第。programsample7d1(input,output);constn=5;typeno=array1.nofinteger;s=array1.nofreal;vari:integer;k:real;num:no;score:s;begink:=0;fori:=1tondobeginreadln(numi,scorei);k:=k+scorei;end;k:=k/n;for

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論