Презентация "Символьные массивы"
Подписи к слайдам:
СИМВОЛЬНЫЕ МАССИВЫ
Кроме символьных величин в Паскале могут использоваться символьные массивы, элементами которых являются группы символов.
- Кроме символьных величин в Паскале могут использоваться символьные массивы, элементами которых являются группы символов.
- Символьный массив отличается от числового только значением входящих в него элементов: числовой массив в качестве элементов имеет числовые выражения, символьный – строковые (символьные).
- Примером одномерного массива служит список класса, где фамилия и имя ученика – элементы массива, а размер массива – число учеников в классе.
- Ввод и вывод элементов символьного массива осуществляются аналогично вводу и выводу элементов числового массива.
- После того, как данные введены в массив, ими можно оперативно распоряжаться. Доступен любой элемент массива. Достаточно только указать его индекс.
- Введите массив строк из N элементов, напечатайте элементы массива в прямом и обратном порядке.
- Program prim1;
- uses crt;
- const n=3;
- var a: array[1..n] of string;
- i: integer;
- begin
- clrscr;
- for i:=1 to n do begin
- write (i,’ ‘); readln (a[i])
- end;
- writeln;
- for i:=1 to n do begin
- write (a[i],’ ‘,a[n+1-i])
- end;
- readln
- end.
- Расположить по алфавиту введенные слова, записанные латинскими буквами.
- Program prim2;
- uses crt;
- const n=3;
- var a: array[1..n] of string; r: string; i,j: integer;
- begin
- clrscr;
- for i:=1 to n do begin
- write (i,’ ‘); readln (a[i])
- end;
- for i:=1 to n-1 do begin
- for j:=i+1 to n do
- if a[i]>a[j] then begin
- r:=a[i]; a[i]:=a[j]; a[j]:=r
- end;
- end;
- for i:=1 to n do
- writeln (a[i]);
- readkey
- end.
- Ввести массив слов A(N) и найти в нем максимальную по длине строку.
- Program prim3;
- uses crt;
- const n=3;
- var a: array[1..n] of string;
- r: string; i,j: integer;
- begin
- clrscr;
- for i:=1 to n do begin
- write (i,’ ‘); readln (a[i]);
- end;
- max:=length(a[1]);
- for i:=1 to n do begin
- if max<=length(a[i]) then max:=length(a[i]);
- r:=a[i]
- end;
- writeln (max, ‘ ‘,r)
- readkey
- end.
- Ввести массив строк A(N) и упорядочить его по возрастанию длин строк.
- Решение: в программе примера 2 заменить строку 10 на:
- if length (a[i])>length (a[j]) then
- begin
- r:=a[i]; a[i]:=a[j]; a[j]:=r
- end;
- Перепишите фамилии учащихся в случайном порядке.
- Решение: Зададим массив B(N) фамилиями учащихся. Затем найдем N целых чисел в пределах от 1 до N и занесем их в массив A. Далее распечатаем последовательно элементы массива B(A(I)).
- Program prim5;
- uses crt;
- const n=3;
- var a: array[1..n] of integer;
- b: array[1..n] of string;
- i,k,x: integer;
- labal 50;
- begin
- clrscr;
- randomize;
- for i:=1 to n do begin
- write (i,’ ‘); readln (b[i])
- end;
- writeln;
- a[1]:=trunc(random(n))+1; k:=1;
- 50: x:=trunc(random(n))+1;
- for i:=1 to k do
- if x=a[i] then goto 50;
- k:=k+1; a[k]:=x;
- if k<n then goto 50;
- for i:=1 to n do
- writeln (i,’ ‘,b[a[i]]);
- readkey
- end.
- Дана строка, состоящая из нескольких слов, между словами стоит один пробел, в конце предложения – точка. Подсчитать количество слов и вывести на экран только те из них, которые начинаются с буквы «а» (слов не больше 30).
- Решение: разобьем предложение на отдельные слова, и каждое будем хранить как элемент массива.
- Program prim6;
- uses crt;
- const n=30;
- var b: array[1..n] of string;
- st: string[255]; k,i: integer;
- begin
- clrscr;
- write (‘st=‘); readln (st);
- k:=1;
- {Пока не встретится пробел, формируем очередное слово k, прибавляя по одной букве}
- for i:=1 to length(st) do
- if st[i]<>’ ‘ then b[k]:=b[k]+st[i] else
- {Если это не последний символ, то увеличиваем счетчик слов и начинаем формировать соответствующий элемент массива}
- if i<>length(str) then begin
- k:=k+1; b[k]:= ‘’
- end;
- writeln (‘k=‘,k);
- {Просматриваем все слова, если первый символ очередного слова равен букве «а», то выводим его}
- for i:=1 to k do
- if copy(b[i],1,1)=‘a’ then write (i,’-‘,b[i],’ ‘)
- readln
- end.
- Если длина строки нечетное число, то удалить среднюю букву.
- Решение: Пусть k – это длина строки, если оно нечетное, то надо удалить средний символ, а его номер равен kDiv2+1.
- Program prim7;
- uses crt;
- var k: integer; st: string;
- begin
- clrscr;
- write (‘st=‘); readln (st);
- k:=length(st);
- if k mod 2=1 then delete (st, kdiv2+1,1);
- writeln(st);
- readln
- end.
- Подсчитать сумму всех цифр данного предложения.
- Program prim8;
- uses crt;
- var d,i,k,n: integer; st: string;
- begin
- clrscr;
- write (‘st=‘); readln (st);
- k:=length(st);
- n:=0;
- for i:=1 to k do begin
- val(st[i],d,k);
- if k=0 then n:=n+d
- end;
- writeln(‘n=‘,n);
- readln
- end.
Информатика - еще материалы к урокам:
- Тест "Представление текста в памяти ПК" 10 класс
- Презентация на тему "Информационные процессы"
- Презентация "Язык Pascal. Основные команды и функции"
- Образовательная программа дополнительного образования по информатике и ИКТ "Компьютерная грамота"
- Презентация "Основные теги HTML" 9 класс
- Итоговое тестирование за курс 9 класса по информатике в рамках промежуточной аттестации