Zadania do wykonania. Rozwiązując poniższe zadania użyj pętlę for.

Podobne dokumenty
Pzetestuj działanie pętli while i do...while na poniższym przykładzie:

Tablice mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011

Algorytmy i struktury danych. Wykład 4

1. Napisz program, który wyświetli Twoje dane jako napis Witaj, Imię Nazwisko. 2. Napisz program, który wyświetli wizytówkę postaci:

Iteracje. Algorytm z iteracją to taki, w którym trzeba wielokrotnie powtarzać instrukcję, aby warunek został spełniony.

Sortowanie przez wstawianie Insertion Sort

Podstawą w systemie dwójkowym jest liczba 2 a w systemie dziesiętnym liczba 10.

I. Podstawy języka C powtórka

Arytmetyka komputera. Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka. Opracował: Kamil Kowalski klasa III TI

Sortowanie Shella Shell Sort

Wstęp do Informatyki zadania ze złożoności obliczeniowej z rozwiązaniami

Zadeklarowanie tablicy przypomina analogiczną operację dla zwykłych (skalarnych) zmiennych. Może zatem wyglądać na przykład tak:

ALGORYTMY Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny

wagi cyfry pozycje

Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie Olimpiada O Diamentowy Indeks AGH 2017/18. Informatyka Etap III

Złożoność obliczeniowa zadania, zestaw 2

Luty 2001 Algorytmy (7) 2000/2001

2 Arytmetyka. d r 2 r + d r 1 2 r 1...d d 0 2 0,

Ćwiczenie 3 z Podstaw programowania. Język C++, programy pisane w nieobiektowym stylu programowania. Zofia Kruczkiewicz

Warszawa dnia 2 stycznia 2011 r. Zbiór zadań z programowania w języku C do samodzielnego wykonania

Algorytmy sortujące i wyszukujące

Programowanie komputerowe. Zajęcia 1

System liczbowy jest zbiorem reguł określających jednolity sposób zapisu i nazewnictwa liczb.

Podstawy informatyki I r.

1. Informatyka - dyscyplina naukowa i techniczna zajmująca się przetwarzaniem informacji.

n, m : int; S, a, b : double. Gdy wartości sumy składowej nie można obliczyć, to przyjąć Sij = 1.03 Dla obliczenia Sij zdefiniować funkcję.

1. Napisz program wypisujący w kolejnych wierszach standardowego wyjścia pojedyncze słowa następującego napisu Bardzo dlugi napis. 2.

do instrukcja while (wyrażenie);

LibreOffice Calc VBA

Analiza algorytmów zadania podstawowe

Zestaw 1 ZESTAWY A. a 1 a 2 + a 3 ± a n, gdzie skªadnik a n jest odejmowany, gdy n jest liczb parzyst oraz dodawany w przeciwnym.

INFORMATYKA Z MERMIDONEM. Programowanie. Moduł 5 / Notatki

B.B. 2. Sumowanie rozpoczynamy od ostatniej kolumny. Sumujemy cyfry w kolumnie zgodnie z podaną tabelką zapisując wynik pod kreską:

1. Operacje logiczne A B A OR B

Informatyka A. Algorytmy

Programowanie w języku C++ Agnieszka Nowak Brzezińska Laboratorium nr 2

Ćwiczenie nr 3. Wyświetlanie i wczytywanie danych

Zadanie 1 Przygotuj algorytm programu - sortowanie przez wstawianie.

Programowanie w Baltie klasa VII

Metoda znak-moduł (ZM)

Programowanie strukturalne i obiektowe. Funkcje

Uniwersytet Kazimierza Wielkiego w Bydgoszczy Zespół Szkół nr 5 Mistrzostwa Sportowego XV Liceum Ogólnokształcące w Bydgoszczy

Zadanie 1. Zmiana systemów. Zadanie 2. Szyfr Cezara. Zadanie 3. Czy liczba jest doskonała. Zadanie 4. Rozkład liczby na czynniki pierwsze Zadanie 5.

PROGRAMOWANIE W C++ ZADANIA

Języki programowania zasady ich tworzenia

INSTRUKCJE ITERACYJNE

4. Postęp arytmetyczny i geometryczny. Wartość bezwzględna, potęgowanie i pierwiastkowanie liczb rzeczywistych.

ARYTMETYKA BINARNA. Dziesiątkowy system pozycyjny nie jest jedynym sposobem kodowania liczb z jakim mamy na co dzień do czynienia.

Lekcja : Tablice + pętle

Znaki w tym systemie odpowiadają następującym liczbom: I=1, V=5, X=10, L=50, C=100, D=500, M=1000

Tablice. Monika Wrzosek (IM UG) Podstawy Programowania 96 / 119

Systemy zapisu liczb.

Zakładka Obmiar jest dostępna dla pozycji kosztorysowej w dolnym panelu. Służy do obliczania ilości robót (patrz też p ).

L6.1 Systemy liczenia stosowane w informatyce

Gimnazjum w Tęgoborzy - Algorytmika Strona 1 z 22 mgr Zofia Czech

Kod uzupełnień do dwóch jest najczęściej stosowanym systemem zapisu liczb ujemnych wśród systemów binarnych.

Zestaw 1 Organizacja plików: Oddajemy tylko źródła programów (pliki o rozszerzeniach.adb)!!!

Język C, tablice i funkcje (laboratorium, EE1-DI)

Jak napisać program obliczający pola powierzchni różnych figur płaskich?

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q

Lab 9 Podstawy Programowania

Wymiar musi być wyrażeniem stałym typu całkowitego, tzn. takim, które może obliczyć kompilator. Przykłady:

Uwaga: Funkcja zamień(a[j],a[j+s]) zamienia miejscami wartości A[j] oraz A[j+s].

Pętla while. Prowadzący: Łukasz Dunaj, strona kółka: atinea.pl/kolko

Klasa 1 technikum. Poniżej przedstawiony został podział wymagań na poszczególne oceny szkolne:

Operacje arytmetyczne

Rekurencje. Jeśli algorytm zawiera wywołanie samego siebie, jego czas działania moŝe być określony rekurencją. Przykład: sortowanie przez scalanie:

> C++ dynamiczna alokacja/rezerwacja/przydział pamięci. Dane: Iwona Polak. Uniwersytet Śląski Instytut Informatyki

Wykład 2. Poprawność algorytmów

Laboratorium 5: Tablice. Wyszukiwanie binarne

Matlab Składnia + podstawy programowania

Konstrukcje warunkowe Pętle

Podstawy Programowania C++

*W uproszczeniu: jest dziewięciu sędziów przyznających po dwie noty: za wartość techniczną i artystyczną (skala od 0.0 do 6.0)

Pętla for. Matematyka dla ciekawych świata -19- Scilab. for i=1:10... end. for k=4:-1:1... end. k=3 k=4. k=1. k=2

PDF stworzony przez wersję demonstracyjną pdffactory Pro Program 15

Zaawansowane algorytmy i struktury danych

for (inicjacja_warunkow_poczatkowych(końcowych); wyrazenie_warunkowe; wyrazenie_zwiekszajace(zmniejszające)) { blok instrukcji; }

Pętle i tablice. Spotkanie 3. Pętle: for, while, do while. Tablice. Przykłady

Sortowanie. Bartman Jacek Algorytmy i struktury

Sortowanie. LABORKA Piotr Ciskowski

PROGRAMOWANIE W PYTHONIE OD PIERWSZYCH KROKÓW

Lekcja 3: Pierwsze kroki z Pythonem. Pętle

Wprowadzenie do architektury komputerów systemy liczbowe, operacje arytmetyczne i logiczne

wstęp do informatyki i programowania część testowa (25 pyt. / 60 min.)

Technikum Nr 2 im. gen. Mieczysława Smorawińskiego w Zespole Szkół Ekonomicznych w Kaliszu

Programowanie w VB Proste algorytmy sortowania

WYRAŻENIA ALGEBRAICZNE

Temat: Pojęcie potęgi i wykładniczy zapis liczb. Część I Potęga o wykładniku naturalnym

Przedmiot: Urządzenia techniki komputerowej Nauczyciel: Mirosław Ruciński

KOŁO MATEMATYCZNE LUB INFORMATYCZNE - klasa III gimnazjum, I LO

Podstawy Informatyki

EGZAMIN - Wersja A. ALGORYTMY I STRUKTURY DANYCH Lisek89 opracowanie kartki od Pani dr E. Koszelew

Algorytmy sortowania w języku C. Autor: mgr inż. Sławomir Samolej. Zagadnienie 1. (Sortowanie)

Klasa 2 INFORMATYKA. dla szkół ponadgimnazjalnych zakres rozszerzony. Założone osiągnięcia ucznia wymagania edukacyjne na. poszczególne oceny

Zestaw C-11: Organizacja plików: Oddajemy tylko źródła programów (pliki o rozszerzeniach.cpp i.h)!!! Zad. 1: Zad. 2:

Wprowadzenie do programu Mathcad 15 cz. 1

Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

EGZAMIN MATURALNY Z INFORMATYKI 19 MAJA 2015 POZIOM ROZSZERZONY. Godzina rozpoczęcia: 9:00 CZĘŚĆ I WYBRANE: Czas pracy: 90 minut

Transkrypt:

Zadania do wykonania Rozwiązując poniższe zadania użyj pętlę for. 1. apisz program, który przesuwa w prawo o dwie pozycje zawartość tablicy 10-cio elementowej liczb całkowitych tzn. element t[i] dla i=2,..,9 po wykonaniu programu ma mieć wartość t[i-2], element t[0] wartość t[8], a element t[1] wartość t[9]. Program ma używać tylko jednej tablicy i stosować pętlę for. 2. apisz program, który przesuwa w lewo o jedną pozycję zawartość tablicy 10-cio elementowej liczb całkowitych tzn. dla elementów i=0,..,8 t[i] po wykonaniu programu ma mieć wartość t[i+1], a element t[9] wartość t[0]. Program ma używać tylko jednej tablicy. Program ma używać tylko jednej tablicy i stosować pętlę for. 3. apisz program, który w tablicy liczb całkowitych 10-cio elementowej wypisuje liczbę, która najczęściej występuje w tej tablicy oraz podaje krotność jej występowania i indeks w tablicy, pod którym liczba ta występuje po raz pierwszy. 4. apisz program, który z dwóch 10-cio elementowych tablic znakowych tworzy trzecią złożoną na zmianę z elementów to jednej, to drugiej tablicy. 5. apisz program, który z dwóch 10-cio elementowych posortowanych rosnąco tablic liczb całkowitych tworzy trzecią (20-elementową) również posortowaną rosnąco. ależy wykorzystać fakt posortowania tablic 10-cio elementowych (do trzeciej tablicy, kolejne elementy mają być wstawiane od razu we właściwym miejscu tej tablicy). 6. apisz program, który z dwóch 10-cio elementowych tablic znakowych tworzy trzecią zawierającą następujące samogłoski: a, e, i z tych tablic. Rozmiar trzeciej tablicy powinien być sumą rozmiarów dwóch pozostałych tablic na wypadek, gdyby w tablicach znajdowały się same wymienione samogłoski. 7. apisz program, który oblicza iloczyn tylko tych elementów całkowitoliczbowej tablicy 10-cio elementowej, które są liczbami parzystymi (chodzi o wartości elementów w tablicy). 8. apisz program, który posortowaną tablicę liczb całkowitych (do programu należy wczytać z klawiatury już posortowane liczby) sortuje w kierunku przeciwnym (jeżeli tablica posortowana jest malejąco program sortuje ją rosnąco, jeżeli rosnąco, program sortuje malejąco). ależy wykorzystać początkowe posortowanie tablicy. W programie można użyć tylko jedną tablicę. Uwaga: Zadanie należy zrealizować zamieniając kolejno element o indeksie 0 z elementem ostatnim w tablicy, o indeksie 1 z przedostatnim itd. Program powinien działać poprawnie zarówno dla tablic o rozmiarze parzystym jak i nieparzystym. 9. apisz program, który wpisuje do kolejnych elementów tablicy 20-elementowej kolejne potęgi liczby n, począwszy od n^0. Liczbę n należy wczytać z klawiatury. Potęgowanie należy zrealizować za pomocą wielokrotnego mnożenia. 10. apisz program, który oblicza i wypisuje kolejne (od 0) potęgi dowolnej ( wczytanej z klawiatury) liczby całkowitej. Zakładamy, że wykładnik jest liczbą całkowitą (dodatnią lub ujemną) i w programie nie wykorzystujemy

funkcji potęgowej dostępnej w języku C. 11. apisz program, który zamienia liczbę całkowitą dziesiętną na system dwójkowy (bez użycia funkcji matematycznych dostępnych w C i formatu binarnego). 12. apisz program, który wstawia dowolną liczbę zmiennoprzecinkową (wczytana z klawiatury)do posortowanej tablicy 10-cio elementowej o elementach -5,5; -1,2; 0; 0; 1,4; 3,5; 6,8; 10; 10; 14,5 tak, aby tablica była nadal posortowana bez sortowania całego wektora. ależy zadeklarować tablicę 11-to elementową, żeby wstawiany element się zmieścił. Uwaga: należy znaleźć miejsce (indeks) elementu w tablicy, gdzie powinna być wstawiona wczytana liczba, a następnie rozsunąć elementy tzn. przesunąć o jedną pozycję w prawo wszystkie elementy w pierwotnej tablicy poczynając od znalezionego indeksu do ostatniego elementu tablicy, a następnie w wolne miejsce wstawić wczytaną wartość. Program ma używać tylko jednej tablicy i stosować pętlę for. 13. apisz program, który wczytuje dowolną liczbę całkowitą x oraz indeks całkowity i z przedziału <0;9>, a następnie wstawia do elementu tablicy o indeksie i wartość x w ten sposób, że aby nie stracić zawartości elementu o indeksie i należy elementy od i do 9 "rozsunąć" w prawo (analogicznie jak w zadaniu 10). ależy zadeklarować jedną 11-elementową tablicę. Program ma używać tylko jednej tablicy i stosować pętlę for. 14. apisz program, który oblicza średnią arytmetyczną elementów podzielnych przez 15 w 10-cio elementowej tablicy liczb całkowitych. 15. apisz program, który oblicza iloczyn elementów podzielnych przez 8 w 10-cio elementowej tablicy liczb całkowitych. 16. apisz program, który z dwóch 10-cio elementowych tablic liczbowych tworzy trzecią w ten sposób, że jej kolejne elementy zawierają na zmianę dwa elementy z jednej tablicy i dwa z drugiej. Uwagi do zadań: Zadanie 1 (zadanie 2 należy wykonać analogicznie, z tym że należy przesunąć elementy w lewo): a) cv cv cv cv cv cv cv 21-3 15 5 0-13 -4 20 6-16 b) 6-16 21-3 15 5 0-13 4 20 Rys. 1. Graficzna ilustracja zadania 1 a)przykładowa tabela przed modyfikacją; b) tabela po przesunięciu jej elementów w prawo o dwie pozycje.

Uwagi: Pierwszym krokiem w programie (po deklaracji potrzebnych zmiennych) musi być wypełnienie konkretnymi liczbami tablicy. Jest to konieczne, gdyż po deklaracji zmiennej (również tablicy) jej wartość jest nieokreślona. W programie proszę wczytać kolejne wartości elementów tablicy z klawiatury. Zadanie 1 można zrealizować stosując różne algorytmy np. można przesunąć każdy element od razu o dwie pozycje w prawo (poza dwoma ostatnimi, które należy potraktować indywidualnie), ale można również osiągnąć ten sam cel przesuwając kolejne elementy tablicy o jedną pozycję w prawo (ostatni element wstawić do elementu o indeksie 0), a następnie powtórzyć tą procedurę drugi raz. a pierwszy rzut oka druga propozycja wydaje się bardziej pracochłonna i skomplikowana, jednak wbrew pozorom jest on prostsza do zrealizowania w programie i bardziej uniwersalna. Jej uniwersalność polega na tym, że po zdefiniowaniu w programie zmiennej lub stałej krok (określającej liczbę pozycji, o którą chcemy przesunąć elementy wektora w prawo) w programie wystarczy jedynie zmienić jej wartość, aby uzyskać program, który poprawnie będzie działał dla dowolnej wartości przesunięcia. Zadanie 5: Załóżmy, że posortowane rosnąco tablice i są następujące: [10]={-3,-2,-1,0,1,4,4,7,11,22} [10]={-7,-5,0,1,3,7,10,12,20,25} SAR L[10], [10], L3[20],,, i3 =0; =0; i3=0; i3<20 <10 && <10 [] < L[] >=10 L3[i3]=[]; L3[i3]=[]; L3[i3]=[]; L3[i3]=[]; = +1; = +1; = +1; = +1; i3 = i3+1; SOP

Rys.2. Schemat blokowy algorytmu z zadania 5. Graficzna interpretacja pierwszych kilku kroków algorytmu z zadania 5: Krok1: L3 i3-7 Początkowo wszystkie zmienne indeksujące:,, i3 mają wartość 0, gdyż analiza tablic, i L3 rozpoczyna się od elementów o indeksie 0. Po porównaniu elementów o indeksie i wybierana jest wartość mniejsza (w tym wypadku jest to wartość -7 z tablicy ) i wpisywana do tablicy L3 o indeksie i3. Po wykonaniu podstawienia do tablicy L3 inkrementowana jest wartość indeksów (gdyż w wyniku porównania wybrano element z tablicy ) i i3 (gdyż w następnym kroku będzie nadawana wartość kolejnemu elementowi w tablicy L3). Krok2: L3 i3-7 -5 Porównanie wartości elementów z tablicy i, na które wskazują odpowiednio indeksy i (-3 i -5) i wstawienie mniejszej (-5 z tablicy ) do elementu o indeksie i3 tablicy L3. astępnie przesunięcie o 1 indeksów i i3. Krok3: L3 i3-7 -5-3

Porównanie wartości elementów z tablicy i, na które wskazują odpowiednio indeksy i (-3 i 0) i wstawienie mniejszej (-3 z tablicy ) do elementu o indeksie i3 tablicy L3. astępnie przesunięcie o 1 indeksów (gdyż z tablicy wybrano wartość) i i3 itd. W każdym kroku sprawdzane są indeksy i, czy nie są większe niż maksymalny dopuszczalny indeks w tablicach i (czyli 9). Po osiągnięciu maksymalnego indeksu przypisanego jednej z tablic, w pozostałych krokach przepisywane są do tablicy L3 pozostałe wartości elementów tablicy drugiej. Rys.3. Fragment okna z uruchomionym programem z zadania 5 (dla przykładowych danych). Zadanie 11: ależy przypomnieć sobie algorytm zamiany całkowitej liczby dziesiętnej na system dwójkowy i na jego podstawie napisać program.