Laboratoria nr 3 program nr 1

Zmienne. Deklaracje zmiennych. Komentarze. Podstawowe typy zmiennych. Nazwy zmiennych. Stałe liczbowe. Operatory arytmetyczne. Operator przypisania. Priorytet operatorów arytmetycznych. Wyrażenia arytmetyczne. Funkcja printf. Funkcja scanf. Stałe i funkcje z pliku nagłówkowego math.h oraz cmath. Przykłady kodu w C/C++.

#include "stdafx.h"
#include <stdio.h> // Biblioteka odpowiedzialna za obsluge wejscia wyjscia
#include <conio.h>
#include <cmath>	// Biblioteka z funkcjami matematycznymi

/**
*
* Program Główny prezentujący funckje C wyprowadzania treści na wyjście konsoli.
* Wprowadzanie danych do programu i podstawowe operacje arytmetyczne.
* Liczenie pola powierzchni prostokata.
*
* @author Marcin Mirończuk
*
*/
int main()
{
	// Krawedz a
	float a;

	// Krawedz b
	float b;

	// Pole powierzchni
	float p;

	// Przypisanie wartośći 0 do zmiennych a,b,p
	a = b = p = 0;

	printf("Program do obliczania pola powierzchni prostokąta\n");
	printf("Program wykonał Marcin Mironczuk\n");
	printf("P - Pole powierzchni\n");
	printf("a - dlugosc pierwszej krawedzi\n");
	printf("b - dlugosc drugiej krawedzi\n");
	printf("P = a*b\n");

	// Wprowadzanie i czytanie dlugosci krawedzi a
	printf("1. Podaj dlugosc krawedzi a: \n");
	scanf("%f", &a);
	printf("Podana przez ciebie dlugosc krawedzi a = %f", a);

	printf("\n");

	// Wprowadzanie i czytanie dlugosci krawedzi b
	printf("2. Podaj dlugosc krawedzi b: \n");
	scanf("%f", &b);
	printf("Podana przez ciebie dlugosc krawedzi b = %f", b);

	printf("\n");

	printf("3. Wcisnij dowolny klawisz aby obliczyc pole powierzchni\n");
	
	getch();

	printf("\n");

	printf("4. Pole powierzchni prostokata P wynosi: \n");

	// Obliczenie pola powierzchni
	p = a*b;

	printf("%f", p);

	getch(); 
	
	return 0;
}

Laboratoria nr 3 program nr 2

Zmienne. Deklaracje zmiennych. Komentarze. Podstawowe typy zmiennych. Nazwy zmiennych. Stałe liczbowe. Operatory arytmetyczne. Operator przypisania. Priorytet operatorów arytmetycznych. Wyrażenia arytmetyczne. Funkcja printf. Funkcja scanf. Stałe i funkcje z pliku nagłówkowego math.h oraz cmath. Przykłady kodu w C/C++.

/** Niezbedne dolaczenie bibliotek **/
#include "stdafx.h"
#include <iostream> // Biblioteka obslugujace operacje wejscia wyjscia
#include <cmath> // Biblioteka z funkcjami matematycznymi mozna tez zastosowac biblioteke math.h

/**
*
* Program Główny prezentujący funckje C++ wyprowadzania treści na wyjście konsoli.
* Wprowadzanie danych do programu i podstawowe operacje arytmetyczne.
* Prezentacja działania zmiennych, przypisywanie zmiennym wartości z funkcji etc..
*
* @author Marcin Mirończuk
*
*/
int main()
{
	using namespace std; // przestrzen nazw

	double polePowierzchni; // zmienna przechowujaca pole powierzchni

	std::cout << "Podaj powierzchnie swego mieszkania w metrach kwadratowych: ";
	std::cin >> polePowierzchni; // wczytanie pola powierzchni zadanego przez uzytkownika

	double bokKwadratu; // zmienna przechowujaca dlugosc boku kwadratu
	
	bokKwadratu = sqrt(polePowierzchni); // wywolanie funkcji obliczajacej pierwiastek z podanego pola 
										// i zapamietanie wyniku w zmiennej bokKwadratu

	std::cout << "Odpowiada to kwadratowi o boku " << bokKwadratu << " metrow." << std::endl;

	std::cin.get();
	std::cin.get();

	return 0;
}

Laboratoria nr 2 program nr 2

Środowisko Microsoft Visual Studio 2008 Express Edition. Stworzenie projektu w Microsoft Visual C++ 2008 Express Edition. Ogólna struktura programu w języku C. Wprowadzanie kodu, kompilacja i uruchamianie programu w Środowisku Visual C++. Sposób zapisu kodu programu. Wyświetlanie tekstów przy użyciu funkcji printf. Najczęściej popełniane błędy i reakcje kompilatora. Program, pokazujące podstawowe funkcje służące do wyprowadzania treści na standardowe wyjście konsolowe. Wprowadzenie do zmiennych, działania na zmiennych oraz wprowadzania danych do programu i operacji na nich. Rozszerzony przykład zawierający funkcje oraz ich prototypy.

#include "stdafx.h"
#include 
#include 
#include "voltage.h"

/**
*
* Program Główny prezentujący funckje C++ wyprowadzania treści na wyjście konsoli.
* Wprowadzanie danych do programu i podstawowe operacje arytmetyczne.
* Liczenie wartości rezystancji oraz uzycie funkcji
*
* @author Marcin Mirończuk
*
*/
int main()
{
	using namespace std;

	float i,u,r,up,down;

	i=u=r=up=down = 0;

	header();

	std::cout << "1. Podaj wartosc pradu I: " << std::endl;
	std::cin >> i;
	std::cout << "Podana przez ciebie wartosc pradu I = " << i << std::endl;

	std::cout << std::endl;

	std::cout << "2. Podaj wartosc rezystancji R: " << std::endl;
	std::cin >> r;
	std::cout << "Podana przez ciebie wartosc rezystancji R = " << r << std::endl;

	std::cout << std::endl;

	std::cout << "3. Wcisnij dowolny klawisz aby obliczyc napiecie na rezystancji" << std::endl;
	
	std::cin.get();
	std::cin.get();

	std::cout << std::endl;

	if(isNegativeValue(i, r)) {
		std::cout << "W zwiazku z tym, ze podane zostaly wartosci ujemne, to przeksztalcam je na wartosci dodatnie" << endl;
		std::cout << std::endl;
		i = abs(i);
		r = abs(r);
	}

	std::cout << "4. Napiecie na rezystancji wynosi: " << std::endl;

	// Obliczenie pola powierzchni
	u = calculateVoltage(r,i);

	std::cout << u;

	std::cout << std::endl;

	std::cout << "5. Podaj o ile chcesz podniesc napiecie: " << std::endl;
	std::cin >> up;
	up = abs(up);
	u += up;

	std::cout << std::endl;
	std::cout << "6. Wartość po podniesieniu napiecia: " << u << std::endl;

	std::cout << "5. Podaj o ile chcesz obnizyc napiecie: " << std::endl;
	std::cin >> down;
	down = abs(down);
	u -= down;

	std::cout << std::endl;
	std::cout << "6. Wartość po podniesieniu napiecia: " << u << std::endl;

	std::cin.get(); 
	std::cin.get(); 
	
	return 0;
}

/**
* Obliczenie wartosci bezwzglednej
*
* @param float x - zmienna podlegajaca zmianie wartosci
* @return float
*/
float abs(float x) {
	if(x < 0) {
		return -1 * x;
	}

	return x;
}

/**
* Naglowki programu
*
* @return void
*/
void header() {
	std::cout << "Program do obliczania napiecia na rezystancji" << std::endl;
	std::cout << "Program wykonał Marcin Mironczuk" << std::endl;
	std::cout << "U - napiecie na rezystorze" << std::endl;
	std::cout << "I - prąd plynacy przez rezystor" << std::endl;
	std::cout << "R - rezystancja" << std::endl;
	std::cout << "U = R*I" << std::endl;
}

/**
* Obliczenie obliczanie napiecia U=R*I
*
* @param float r - wartosc rezystancji
* @param float i - wartosc pradu
* @return float
*/
float calculateVoltage(float r, float i) {
	return r*i;
}

/**
* Sprawdzenie czy wartosc wprowadzona przez uzytkownika rezystancji jest ujemna
*
* @param float x - wartosc rezystancji
* @return boolean
*/
bool isResisorSetNegativeValue(float r) {
	if(r < 0) {
		return true;
	}

	return false;
}

/**
* Sprawdzenie czy wartosc wprowadzona przez uzytkownika pradu jest ujemna
*
* @param float x - wartosc rezystancji
* @return boolean
*/
bool isCurrentSetNegativeValue(float i) {
	if(i < 0) {
		return true;
	}

	return false;
}

/**
* Sprawdzenie czy wartosc wprowadzona przez uzytkownika rezystancji lub pradu jest ujemna
*
* @param float x - wartosc rezystancji
* @return boolean
*/
bool isNegativeValue(float i, float r) {
	if(isResisorSetNegativeValue(r) || isCurrentSetNegativeValue(i)) {
		return true;
	}

	return false;
}

Funkcje nagłówkowe voltage.h

float abs(float x);

void header();

float calculateVoltage(float r, float i);

bool isResisorSetNegativeValue(float r);

bool isCurrentSetNegativeValue(float i);

bool isNegativeValue(float i, float r);

float upVoltage(float u);

float downVoltage(float u);

Laboratoria nr 2 program nr 1

Środowisko Microsoft Visual Studio 2008 Express Edition. Stworzenie projektu w Microsoft Visual C++ 2008 Express Edition. Ogólna struktura programu w języku C. Wprowadzanie kodu, kompilacja i uruchamianie programu w Środowisku Visual C++. Sposób zapisu kodu programu. Wyświetlanie tekstów przy użyciu funkcji printf. Najczęściej popełniane błędy i reakcje kompilatora. Program, pokazujące podstawowe funkcje służące do wyprowadzania treści na standardowe wyjście konsolowe. Wprowadzenie do zmiennych, działania na zmiennych oraz wprowadzania danych do programu i operacji na nich.

#include "stdafx.h"
#include 
#include 

/**
*
* Program Główny prezentujący funckje C++ wyprowadzania treści na wyjście konsoli.
* Wprowadzanie danych do programu i podstawowe operacje arytmetyczne.
*
* @author Marcin Mirończuk
*
*/
int main()
{
	using namespace std;

	float a,b,p;

	a=b=p = 0;

	std::cout << "Program do obliczania pola powierzchni prostokąta" << std::endl;
	std::cout << "Program wykonał Marcin Mironczuk" << std::endl;
	std::cout << "P - Pole powierzchni" << std::endl;
	std::cout << "a - dlugosc pierwszej krawedzi" << std::endl;
	std::cout << "b - dlugosc drugiej krawedzi" << std::endl;
	std::cout << "P = a*b" << std::endl;

	std::cout << "1. Podaj dlugosc krawedzi a: " << std::endl;
	std::cin >> a;
	std::cout << "Podana przez ciebie dlugosc krawedzi a = " << a << std::endl;

	std::cout << std::endl;

	std::cout << "2. Podaj dlugosc krawedzi b: " << std::endl;
	std::cin >> b;
	std::cout << "Podana przez ciebie dlugosc krawedzi b = " << b << std::endl;

	std::cout << std::endl;

	std::cout << "3. Wcisnij dowolny klawisz aby obliczyc pole powierzchni" << std::endl;
	
	std::cin.get();
	std::cin.get();

	std::cout << std::endl;

	std::cout << "4. Pole powierzchni prostokata P wynosi: " << std::endl;

	// Obliczenie pola powierzchni
	p = a*b;

	std::cout << p;

	std::cin.get(); 
	std::cin.get(); 
	
	return 0;
}

Laboratoria nr 1 program nr 3

Program komputerowy, etapy tworzenia programu, uruchomienie programu. Definicje algorytmu, podstawowe cechy algorytmu, metody opisu algorytmów. Przykłady schematów blokowych algorytmów. Prezentacja programów, pokazujących podstawowe funkcje służące do wyprowadzania treści na standardowe wyjście konsolowe.

#include "stdafx.h"	//dyrektywa PREPROCESORA
#include 	//dyrektywa PREPROCESORA
#include 

/**
*
* Program Główny prezentujący funckje C++ wyprowadzania treści na wyjście konsoli.
* Tabulacje tekstu, łamanie linii etc.
*
* @author Marcin Mirończuk
*
*/
int main()		//nagłówek funkcji
{			//początek treści funkcji

	/** Komentarz - Zdefiniowanie przestrzeni nazw*/
	using namespace std;

	std::cout << "Jestem w swiecie programowania C/C++."; //komunikat

	std::cout << std::endl;						//zaczynamy nowy wiersz

	/** Kolejny komunikat */
	std::cout << "Jestem \tw  \t swiecie \vprogramowania \v C/C++ \vale \vbardziej \vC++ niz C." << std::endl;

	/** Wywołanie metody "funkcji" zatrzymującej okienko DOSa */
	std::cin.get();

	return 0;
}

Laboratoria nr 1 program nr 2

Program komputerowy, etapy tworzenia programu, uruchomienie programu. Definicje algorytmu, podstawowe cechy algorytmu, metody opisu algorytmów. Przykłady schematów blokowych algorytmów. Prezentacja programów, pokazujących podstawowe funkcje służące do wyprowadzania treści na standardowe wyjście konsolowe.

#include "stdafx.h"		//dyrektywa PREPROCESORA
#include <stdio.h>		//dyrektywa PREPROCESORA
#include <conio.h>		//dyrektywa PREPROCESORA

/**
*
* Program Główny prezentujący funckje C wyprowadzania treści na wyjście konsoli
* @author Marcin Mirończuk 
*
*/
int main()	//nagłówek funkcji
{		//początek treści funkcji
	printf("Jestem w swiecie programowania C/C++."); //komunikat

	printf("\n"); //zaczynamy nowy wiersz

	/** Kolejny komunikat */
	printf("Jestem w  swiecie programowania C/C++ ale bardziej C niz C++.\n");

	/** Komunikat z nowym wierszem */
	printf("Moge zapisac takze powyzsze wyrazenia jako jeden ciag z uzyciem \\n jako znaku podzialu.\n");

	/** Dodatkowy komunikat */
	printf("Jestem w swiecie programowania C/C++.\nJestem w  swiecie programowania C/C++ ale bardziej C niz C++.");

	/** Wywołanie funkcji zatrzymującej okienko DOSa */
	getch();

	return 0;
}

Laboratoria nr 1 program nr 1

Program komputerowy, etapy tworzenia programu, uruchomienie programu. Definicje algorytmu, podstawowe cechy algorytmu, metody opisu algorytmów. Przykłady schematów blokowych algorytmów. Prezentacja programów, pokazujących podstawowe funkcje służące do wyprowadzania treści na standardowe wyjście konsolowe.

#include "stdafx.h"       //dyrektywa PREPROCESORA
#include  <iostream>    //dyrektywa PREPROCESORA
#include  <stdio.h>     //dyrektywa PREPROCESORA

/**
*
* Program Główny prezentujący funckje C++ wyprowadzania treści na wyjście konsoli
* @author Marcin Mirończuk 
*
*/
int main()										//nagłówek funkcji
{												//początek treści funkcji

	/** Komentarz - Zdefiniowanie przestrzeni nazw*/
	using namespace std;

	std::cout << "Jestem w swiecie programowania C/C++."; //komunikat

	std::cout << std::endl;						//zaczynamy nowy wiersz

	/** Kolejny komunikat */
	std::cout << "Jestem w  swiecie programowania C/C++ ale bardziej C++ niz C." << std::endl;

	/** Komunikat z nowym wierszem */
	std::cout << "Moge zapisac takze powyzsze wyrazenia jako jeden ciag z uzyciem \\n jako znaku podzialu." << std::endl;

	/** Dodatkowy komunikat */
	std::cout << "Jestem w swiecie programowania C/C++.\nJestem w  swiecie programowania C/C++ ale bardziej C++ niz C.";

	/** C/C++ mix */
	printf("\nWpisalem kod C do kodu C++");

	/** Wywołanie metody "funkcji" zatrzymującej okienko DOSa */
	std::cin.get();

	return 0;
}

Zaproszenie na seminarium

Zapraszam na seminaria odbywające się w zakładzie Informatyki i Łączności  Szkoły Głównej Służby Pożarniczej (SGSP). Planowane są co tydzień w poniedziałek o godzinie 14.00, przedstawiana będzie na nich różnego rodzaju problematyka związana z analizą danych tekstowych i nie tylko. Szczegóły dotyczące prezentacji i ich terminarz umieszczony jest na stronie zakładu (seminaria).

Osobiście zaprezentuje 14 marca 2011 roku temat poświęcony jakościowej analizie danych tekstowych z systemu EWID-99, tytuł prezentacji brzmi „System informacyjny na temat sieci hydrantów dla krajowego systemu ratowniczo-gaśniczego: metoda analizy systemu EWID-99”. W wystąpieniu zostanie zaprezentowana opracowana, przez autora i zastosowana w podjętych przez niego badaniach, zmodyfikowana analiza przyczyn i skutków błędów (ang. failure modes and effects analysis – FMEA) zawierająca drzewo analizy błędów oprogramowania (ang. software failure tree analysis – SFTA). Analiza ta została wykorzystana do sfalsyfikowania możliwości zastosowania, w aktualnej tekstowej – wyrażonej za pomocą języka naturalnego – postaci, elektronicznej sekcji Dane opisowe do informacji ze zdarzenia systemu EWID99 jako operacyjnej bazy danych na temat sieci hydrantów. W wystąpieniu zostanie także przedstawiona alternatywna struktura danych do zapisywania i przeszukiwania informacji na temat hydrantów. Omówiony zostanie, zaprojektowany, przykładowy system wyszukiwania informacji na temat hydrantów zawarty w nierelacyjnym katalogowym rejestrze (ang. Not Only SQL – noSQL). Jego propozycja wynika z przeprowadzonej analizy i stanowi alternatywę dla aktualnego systemu wyszukiwania informacji w systemie EID99.

Praca badawcza…

Cały czas podnoszę się na duchu, dość dobrze obrazującym aktualny stan badań, cytatem Albert Einsteina: „Gdybym wiedział co robię, to przecież nie była by praca badawcza.” Tak więc aby do przodu.

Notka z badań

Ostatnio cały czas spędzam nad składaniem rozprawy i szlifowaniem tez w celu ich prezentacji. Szczerze jest to niebanalne wyzwanie. W czasie tych 3 lat, sporo się działo, powstało parę ciekawych opracowań i artykułów. Większość jest jeszcze w recenzjach. W końcu znalazłem problem badawczy, aktualnie jestem w dalszym ciągu na etapie implementacji oprogramowania do jego zbadania. Wszystko jest na papierze, teraz należy to sprawdzić w praktyce. Co z tego wyjdzie, kto wie. Chyba właśnie na tym polega nauka i badania, że do końca nie wiadomo co z tego wszystkiego wyniknie. Na początku jest mgliste pojęcie o pewnych sprawach i zjawiskach, na szczęście wraz z zawężaniem problemu, mgła niewiadomej się trochę rozwiewa. Najważniejsze jest teraz zebranie wszystkich materiałów oraz otrzymanych wyników ze wstępnych analiz w jedną całość. Nie ma co zwlekać, trzeba ruszać z powrotem do badań nad raportami.