Как записать в тетрадь словесным алгоритмом???
«Проекти з вкладеними циклами і розгалуженнями»
Увага! Під час роботи з комп’ютером дотримуйтеся вимог безпеки життєдіяльності та санітарно-гігієнічних норм.
1. Відкрийте середовище Scratch 2.
2. Складіть проект, у якому виконавець 4 рази змінить образ, якщо буде натиснуто клавішу пропуск, або переміститься на 20 кроків управо, якщо буде натиснуто клавішу стрілка вправо.
3. Збережіть проект у своїй папці у файлі з іменем практична 6_1.
4. Складіть проект, у якому виконавець, поки він не доторкнеться до межі, буде повторювати такі дії: рухатися вгору та повідомляти деяке повідомлення, якщо буде натиснуто клавішу стрілка вгору, або рухатися вниз і повідомляти інше повідомлення, якщо буде натиснуто клавішу стрілка вниз.
5. Збережіть проект у вашій папці у файлі з іменем практична 6_2. 6. Закрийте середовище Scratch 2.
var
s: string;
ms: array of string;
begin
Write('Введите три слова через пробел: ');
Readln(s);
ms := s.Split(' ');
Writeln(ms[0] + ' ' + ms[2] + ' ' + ms[1])
end.
Вторая программа реализуется в любой версии Pascal. Её недостаток в том, что она правильно работает только тогда, когда введена фраза из трех слов, разделенных пробелом. Это простейший линейный алгоритм.
var
s, s1, s2, s3: string;
n, p: integer;
begin
Write('Введите три слова через пробел: ');
Readln(s);
n := Length(s);
p := Pos(' ', s);
s1 := Copy(s, 1, p - 1);
s3 := Copy(s, p + 1, n - p);
p := Pos(' ', s3);
s2 := Copy(s3, 1, p - 1);
n := Length(s3);
s3 := Copy(s3, p + 1, n - p);
Writeln(s1 + ' ' + s3 + ' ' + s2)
end.
Третья программа также реализуема в любой версии Pascal и содержит "классический" работы со строкой, состоящий в последовательном анализе каждого символа. Имеет защиту на случай, если слов будет больше или меньше трех.
var
s: string;
ms: array[1..3] of string;
i, n, p, j: integer;
begin
Write('Введите три слова через пробел: ');
Readln(s);
{
Алгоритм: Просматриваем все символы строки начиная с позиции p
и при обнаружении пробела в позиции q заносим в массив очередное слово,
копируя q-p символов, начиная с p. Затем заносим в p значение q+1
и продолжаем просмотр. При старте принимаем p=1
}
p := 1; j := 0; n := Length(s);
for i := 1 to n do
if s[i] = ' ' then
begin
j := j + 1;
if j <= 3 then begin{ если введено больше двух пробелов }
ms[j] := Copy(s, p, i - p);
p := i + 1
end
end;
if j < 3 then ms[3] := Copy(s, p, n - p + 1);
Writeln(ms[1] + ' ' + ms[3] + ' ' + ms[2])
end.
Все три программы опробованы и результаты их работы одинаковы:
Введите три слова через пробел: Зебра полосатая лошадь
Зебра лошадь полосатая
Общее - оба являются небольшими графическими объектами
Различия - пиктограмма или иконка используется как растровый графический объект и страдает от маштабирования, но при этом может иметь много цветов. Обычно используется как подсказка на кнопку с некой командой (напр. сохранить, копировать, вставить)
Символ является частью некого шрифта и потому нарисован в векторной графике, не искажается при маштабировании, но может быть лишь одного цвета. Может иметь несколько вариантов начертания - курсив, жирный и тд. Используется так же как текст
В последнее время микрософт ввели новый шрифт для пиктограм, окончательно сроднив оба элемента.
2. Что такое знаковая система? Попытайтесь описать русский язык как знаковую систему? Опишите десятичную систему счисления как знаковую систему.
Знаковая система - это система определения неких определенных знаков как определенные понятия.
Язык - знаковая система сама по себе. Например есть обьект красно-желтый, сладкий, для него придумали название "яблоко". Доугой назвали "абрикос" и тд. Тут все легко, сложнее с абстрактными понятиями и действиями, чувствами. Еще примечательно что оперировать можно лишь внутри понятий определенных языком.
Весьма трудно увидель то чего нет в языке. Это уже часть управления
С десятичной системой думаю и так все ясно. Два яблока это "2", семь это "7". Просто так обозначили