Logia12 – rok szkolny 2011/2012 – etap - II

Zad. 1. (szlaczek) W klasie Oli zapanowała moda na kolorowe szlaczki rysowane w zeszytach. Każdy chciał mieć oryginalny szlaczek wymyślony tylko dla siebie. Ola postanowiła przygotować specjalny program do projektowania szlaczków złożonych z kwadratów w dwóch kolorach. Umówiła się z koleżankami, że otrzyma od nich dwie informacje - wysokość szlaczka oraz opis tworzących go kwadratów. Rysunki wydały jej się smutne, więc postanowiła dodać trzeci kolor - czerwony, w ten sposób, że w tych kolumnach rysowanego szlaczka, w których jest najwięcej szarych kwadratów, zastąpiła je kwadratami czerwonymi.

Pomóż Oli projektować szlaczek i napisz procedurę WZOREK :h :s rysującą na środku ekranu szlaczek o szerokości 600 lub wysokości 400, złożony z szarych, czerwonych i białych kwadratów. Parametr :h określa wysokość szlaczka i może przyjmować wartości od 2 do 20. Parametr :s jest słowem opisującym wygląd szlaczka zgodnie z następującymi zasadami:

Rysunki poniżej przedstawiają efekt wywołania

Zad. 2. (palindromy) Słowo palindrom pochodzi od greckiego słowa palindromeo - biec z powrotem. Palindrom to takie wyrażenie, które jest identyczne, jeśli czytamy je od lewej do prawej i od prawej do lewej, przykładowo: oko, inni, kajak, inniwinni, kobyłamamałybok.

Napisz funkcję ILEP :s, której wartością jest liczba palindromów zawartych w słowie :s, składającym się jedynie z małych liter.

Zad. 3. (pionek) Pionek porusza się po prostokątnej planszy, w każdym ruchu przesuwając się o jedno pole w jednym z czterech kierunków: w lewo, w prawo, w górę, w dół. Poszczególne pola planszy zawierają cyfry.

Napisz funkcję PIONEK :w :p :c, która dla planszy składającej się z :w wierszy, opisanej słowem :p, wyliczy minimalną liczbę ruchów, jaką musi wykonać pionek, aby przejść pomiędzy dwoma polami zawierającymi cyfrę :c. Słowo :p zawiera ciąg cyfr opisujących zawartość kolejnych pól planszy, wierszami, poczynając od lewego górnego pola. Zakładamy, że cyfra :c występuje na planszy co najmniej dwa razy, a także poprawną długość słowa :p.