V | Сынып жұмысы (20 мин) | 2. ЕСЕП: Сөйлем сөздерден тұратыны белгілі. Клавиатурадан енгізілген сөйлемдегі ең ұзын сөзді және оның қанша таңбасы бар екенін анықтайтын программа жазыңыз: МАТЕМАТИКАЛЫҚ модел: Не белгілі? Цикл параметрі і –типі бүтін сан, сөйлем s– типі жолдық, ең ұзын сөз mr - типі жолдық, – ең ұзын сөздегі әріптер (таңбалар) саны m–типі бүтін сан. Не істеу керек? mr, m шамаларының мәндерін анықтау; Қалай есептейміз? бастапқы мәліметтерді енгіземіз s, бастапқы мәндерді меншіктейміз m=0, Қайталау парамтерi i 1-бастап сөйлем ұзындығына дейін өзгереді. Әр қайталау сайын кезекті таңбаны s[i] аралық шамаға жинақтаймыз, әрі оның бос орынға (пробелге) тең емес екенін тексереміз. Бос орын кездессе r –шамасына сөйлемнің бір сөзі жинақталғанын білеміз. Оның әріптер санын алдынғы сөздің әріптер санымен салыстырамыз да, қайсысында таңба көп болса сол сөзді mr және оның таңбалар санын m сақтап қаламыз. program uzynsoz; var i,m: integer; mr,s,r: string; begin writeln('Бірнеше сөзден тұратын сөйлем енгізіңіз '); read(s); m:=0; for i:=1 to length(s) do begin r:=r+s[i]; if s[i]=' ' then r:=''; if mlength(r) then begin m:=length(r); mr:=r;end; end; writeln('Ең ұзын сөз: ',mr); writeln('Оның ',m,' таңбасы бар'); end. 2а) (жеңіл нұсақ) 1-ден бүтін М-ге дейінгі сандардың квадраттарын басып шығаратын программа жазыңыз. program kvadrat; var i,m:integer; begin write('butin m sanayn engiz '); read(m); for i:=1 to m do writeln(i,' ',i*i); end | Бүтін М10 болатын санның 1-ге дейінгі кубтарын кему ретімен басып шығаратын программа жазыңыз. program kuby; var i,m:integer; begin write('butin m sanayn engiz '); read(m); for i:=m downto 1 do writeln(i,' kuby ',i*i*i); end. | |