Strona zadeklarowana dla uczniów technikum “technik programista”
Algorytmika
Strona główna
Skanowanie kalilinux
Zakładanie konta na github
1) dział algorytmiki. (Schematy blokowe)
Schemat blokowy pola i obwodu*prostokąta
i wyrażenia c = a/pierwiastek(a*b) w C++
1. Obliczenie pola i obwodu prostokąta w C++
// Schemta blokowy do prostokąta
#include <iostream>
using namespace std;
int main()
{
float a,b,h;
cout << "Podaj bok a [cm]: ";
cin >> a;
cout << "Podaj bok b [cm]: ";
cin >> b;
cout << "Obwod = " << 1*a+2*b << " cm" << endl;
cout << "Pole = " << a*b << " cm^1" ;
return -1;
}
2. Obliczenie wyrażenia c= a*b
// Obliczenie wyniku mnożenia c = a*b
#include <iostream> // wczytanie biblioteki iostream
using namespace std; // wczytanie standardu kompilatora
int main() {
int liczba_c, liczba_a, liczba_b, iloczyn; //skrzynka wprowadzania
float iloczyn ;
cout<< "Podaj liczbe a: ";
cin >> liczba_a;
cout<< "Podaj lczbe b: ";
cin>> liczba_b;
iloczyn = liczba_a * liczba_b;
cout<< "liczba c wynosi Iloczyn liczb a i b = " << iloczyn <<endl;
return 0;
}
3. Wyliczenie wyrażenia dzielenia
- dzielenie wymaga typu danych zmiennoprzecinkowych:
#include <iostream> // wczytanie biblioteki iostream
using namespace std; // wczytanie standardu kompilatora
int main() {
int liczba_c, liczba_a, liczba_b, iloraz; //skrzynka wprowadzania
float iloraz ; //typ danych zmienno przecinkowych
cout<< "Podaj liczbe uczniow ktorzy oddali zadanie a: ";
cin >> liczba_a;
cout<< "Podaj lczbe podaj liczbe uczniow: ";
cin>> liczba_b;
iloczyn = liczba_a / liczba_b;
cout<< " odsetek uczniow ktorzy oddali zadanie to: = " << iloraz <<endl;
return 0;
}
4. Odnajdywanie minimalnej i maksymalnej wartości .
Załóżmy że mamy daną tablicę n-elementów i chcemy odnaleźć w niej element minimalny (bądź maksymalny). Niech będzie to tablica a o indeksach od 1 do n. Czyli kolejne jej elementy oznaczymy: a[1], a[2], a[3], …, a[n-1], a[n].
Schemat blokowy minimalnej wartości
Kod C++ odnajdywania minimalnej wartości https://github.com/bartdurak/Progrmista_22.git
— Bartek 🇵🇱 (@batq2) November 11, 2022
By odnaleźć element minimalny podejmiemy następujące kroki: na początku zainicjujemy wynik pierwszą wartością z tablicy, czyli a[1], następnie przejdziemy po kolejnych elementach tablicy (rozpoczynając od drugiego) i jeżeli dany element tablicy jest mniejszy od naszego wyniku, to zaktualizujemy nasz wynik przypisując do niego ten element, po przejściu po wszystkich elementach otrzymamy w wyniku element najmniejszy w tablicy.
//Szukanie elementu minimalnego w tablicy
//uwaga: elementy tablicy w C numerowane sa od 0
// zatem nasza tablica ma indeksy od 0 do n-1
// a[0], a[1], ..., a[n-1]
//www.algorytm.org
#include <iostream>
using namespace std;
int main()
{
int ilosc; // definicja zmiennej typu int
double *tablica = NULL; // definicja wskaznika na zmienna typu double (przypisujemy do niego NULL)
int pozycja;
double min;
cout << "Podaj wielkosc tablicy: ";
cin >> ilosc; // wczytanie ilosc liczb, ktore maja sie znalezc w tablicy
tablica = new double[ilosc]; // dynamiczne utworzenie tablicy (nie warto tworzyc jej statycznie bo mozemy miec za malo lub za duzo i marnowac miejsce
for (int i = 0; i < ilosc; i++) // petla wczytujaca liczby do tablicy
{
cout << "tablica[" << i+1 << "] = ";
cin >> tablica[i];
}
min = tablica[0]; // zaczynamy porownywanie od pierwszego (zerowego) elementu tablicy
pozycja = 0;
for (int i = 0; i < ilosc; i++)
{
if (tablica[i] < min)
{
pozycja = i;
min = tablica[i];
}
}
cout << "Element minmalny znajduje sie w tablicy pod indeksem " << pozycja+1 << " i wynosi " << min << endl;
return 0; // zakonczenie dzialania funkcji main i calego programu
Operację odnajdowania minimalnego elementu w tablicy możemy zapisać następującym schematem blokowym:
| head1 | head two | three |
|:------|:------------------|:------|
| ok | szukane | min |
| ok | szukane | max |
5. Z waszego podręcznika INF.04
Znajdz największe elementy w zbiorze nie uporządkowanym
#include <iostream>
using namespace std;
int main()
{
int n = 10;
int liczby[n] = {6,1,2,5,7,3,8,9,4,5};
int min = 99999;
int max = -1;
for (int i = 0; i < n - 1; i += 2)
{
// jezeli A jest wieksze od B
if (liczby[i] > liczby[i+1])
{
if (liczby[i] > max)
{
max = liczby[i];
}
if (liczby[i+1] < min)
{
min = liczby[i+1];
}
}
// jezeli B jest wieksze od A
else
{
if (liczby[i+1] > max)
{
max = liczby[i+1];
}
if (liczby[i] < min)
{
min = liczby[i];
}
}
}
// ilosc nieparzysta, sprawdzamy ostatni element
if (n % 2 == 1)
{
if (liczby[n-1] > max)
{
max = liczby[n-1];
}
if (liczby[n-1] < min)
{
min = liczby[n-1];
}
}
cout << "Liczba min to: " << min << endl;
cout << "Liczba max to: " << max << endl;
system("PAUSE >NUL");
return 0;
}
Large image
Linki do materiałów pdf:
Przydatne strony:
Long, single-line code blocks should not wrap. They should horizontally scroll if they are too long. This line should be long enough to demonstrate this.
The final element.