Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- PRVI
- #include <iostream>
- #include <vector>
- /* TP 2016/2017: Tutorijal 3, Zadatak 1
- Autotestove pisao Haris Hasic. Sva pitanja
- sugestije i prijave gresaka mozete slati na
- mail: hhasic2@etf.unsa.ba
- */
- bool parnost(int a){
- if(a%2 == 0) return true;
- return false;
- }
- int suma_cifara(int a){
- int suma(0);
- while(a != 0){
- suma += a%10;
- a /= 10;
- }
- return suma;
- }
- std::vector<int> IzdvojiElemente(std::vector<int> a, bool x){
- std::vector<int> b;
- std::vector<int> c;
- for(int i=0; i<a.size(); i++){
- if(parnost(suma_cifara(a.at(i))))
- b.push_back(a.at(i));
- else
- c.push_back(a.at(i));
- }
- if(x) return b;
- else return c;
- }
- int main ()
- {
- std::cout << "Koliko zelite unijeti elemenata: ";
- int n;
- std::cin >> n;
- if(n < 1){
- std::cout << "Broj elemenata mora biti veci od 0!";
- return 0;
- }
- int element;
- std::vector<int> a;
- std::cout << "Unesite elemente: ";
- for(int i=0; i<n; i++){
- std::cin >> element;
- a.push_back(element);
- }
- std::vector<int> b;
- std::vector<int> c;
- for(int i=0; i<n; i++){
- if(parnost(suma_cifara(a.at(i))))
- b=IzdvojiElemente(a,true);
- else
- c=IzdvojiElemente(a,false);
- }
- for(int x: b)
- std::cout << x << " ";
- std::cout << std::endl;
- for(int x: c)
- std::cout << x << " ";
- return 0;
- }
- ---------------------------------------------------------------------------------------------------------------------------------
- DRUGI
- /* TP 2016/2017: Tutorijal 3, Zadatak 2
- Autotestove pisao Haris Hasic. Sva pitanja
- sugestije i prijave gresaka mozete slati na
- mail: hhasic2@etf.unsa.ba
- */
- #include <iostream>
- #include <vector>
- bool parnost(int a){
- if(a%2 == 0) return true;
- return false;
- }
- int suma_cifara(int a){
- int suma(0);
- while(a != 0){
- suma += a%10;
- a /= 10;
- }
- return suma;
- }
- std::vector<int> IzdvojiElemente(std::vector<int> a, bool x){
- std::vector<int> b;
- std::vector<int> c;
- for(int i=0; i<a.size(); i++){
- if(parnost(suma_cifara(a.at(i))))
- b.push_back(a.at(i));
- else
- c.push_back(a.at(i));
- }
- if(x) return b;
- else return c;
- }
- int main ()
- {
- std::cout << "Koliko zelite unijeti elemenata: ";
- int n;
- std::cin >> n;
- if(n < 1){
- std::cout << "Broj elemenata mora biti veci od 0!";
- return 0;
- }
- int element;
- std::vector<int> a;
- std::cout << "Unesite elemente: ";
- for(int i=0; i<n; i++){
- std::cin >> element;
- a.push_back(element);
- }
- std::vector<int> b;
- std::vector<int> c;
- for(int i=0; i<n; i++){
- if(parnost(suma_cifara(a.at(i))))
- b=IzdvojiElemente(a,true);
- else
- c=IzdvojiElemente(a,false);
- }
- for(int i=0; i<b.size(); i++){
- if(i==b.size()-1)
- std::cout << b.at(i);
- else
- std::cout << b.at(i) << ",";
- }
- std::cout << std::endl;
- for(int i=0; i<c.size(); i++){
- if(i==c.size()-1)
- std::cout << c.at(i);
- else
- std::cout << c.at(i) << ",";
- }
- return 0;
- }
- -------------------------------------------------------------------------------------------------------------------------------------
- TRECI
- /* TP 2016/2017: Tutorijal 3, Zadatak 3
- Autotestove pisao Haris Hasic. Sva pitanja
- sugestije i prijave gresaka mozete slati na
- mail: hhasic2@etf.unsa.ba
- */
- #include <iostream>
- #include <deque>
- bool parnost(int a){
- if(a%2 == 0) return true;
- return false;
- }
- int suma_cifara(int a){
- int suma(0);
- while(a != 0){
- suma += a%10;
- a /= 10;
- }
- return suma;
- }
- std::deque<int> IzdvojiElemente(std::deque<int> a, bool x){
- std::deque<int> b;
- std::deque<int> c;
- for(int i=0; i<a.size(); i++){
- if(parnost(suma_cifara(a.at(i))))
- b.push_back(a.at(i));
- else
- c.push_back(a.at(i));
- }
- if(x) return b;
- else return c;
- }
- int main ()
- {
- std::cout << "Koliko zelite unijeti elemenata: ";
- int n;
- std::cin >> n;
- if(n < 1){
- std::cout << "Broj elemenata mora biti veci od 0!";
- return 0;
- }
- int element;
- std::deque<int> a;
- std::cout << "Unesite elemente: ";
- for(int i=0; i<n; i++){
- std::cin >> element;
- a.push_back(element);
- }
- std::deque<int> b;
- std::deque<int> c;
- for(int i=0; i<n; i++){
- if(parnost(suma_cifara(a.at(i))))
- b=IzdvojiElemente(a,true);
- else
- c=IzdvojiElemente(a,false);
- }
- for(int i=0; i<b.size(); i++){
- if(i==b.size()-1)
- std::cout << b.at(i);
- else
- std::cout << b.at(i) << ",";
- }
- std::cout << std::endl;
- for(int i=0; i<c.size(); i++){
- if(i==c.size()-1)
- std::cout << c.at(i);
- else
- std::cout << c.at(i) << ",";
- }
- return 0;
- }
- -----------------------------------------------------------------------------------------------------------------------
- CETVRTI
- /* TP 2016/2017: Tutorijal 3, Zadatak 4
- Autotestove pisao Haris Hasic. Sva pitanja
- sugestije i prijave gresaka mozete slati na
- mail: hhasic2@etf.unsa.ba
- */
- #include <iostream>
- #include <deque>
- bool parnost(int a){
- if(a%2 == 0) return true;
- return false;
- }
- int suma_cifara(int a){
- int suma(0);
- while(a != 0){
- suma += a%10;
- a /= 10;
- }
- return suma;
- }
- std::deque<int> IzdvojiElemente(std::deque<int> a, bool x){
- std::deque<int> b;
- std::deque<int> c;
- for(int i=0; i<a.size(); i++){
- if(parnost(suma_cifara(a.at(i))))
- b.push_front(a.at(i));
- else
- c.push_front(a.at(i));
- }
- if(x) return b;
- else return c;
- }
- int main ()
- {
- std::cout << "Koliko zelite unijeti elemenata: ";
- int n;
- std::cin >> n;
- if(n < 1){
- std::cout << "Broj elemenata mora biti veci od 0!";
- return 0;
- }
- int element;
- std::deque<int> a;
- std::cout << "Unesite elemente: ";
- for(int i=0; i<n; i++){
- std::cin >> element;
- a.push_back(element);
- }
- std::deque<int> b;
- std::deque<int> c;
- for(int i=0; i<n; i++){
- if(parnost(suma_cifara(a.at(i))))
- b=IzdvojiElemente(a,true);
- else
- c=IzdvojiElemente(a,false);
- }
- for(int i=0; i<b.size(); i++){
- if(i==b.size()-1)
- std::cout << b.at(i);
- else
- std::cout << b.at(i) << ",";
- }
- std::cout << std::endl;
- for(int i=0; i<c.size(); i++){
- if(i==c.size()-1)
- std::cout << c.at(i);
- else
- std::cout << c.at(i) << ",";
- }
- return 0;
- }
- --------------------------------------------------------------------------------------------------------------------------
- PETI
- /* TP 2016/2017: Tutorijal 3, Zadatak 5
- Autotestove pisao Haris Hasic. Sva pitanja
- sugestije i prijave gresaka mozete slati na
- mail: hhasic2@etf.unsa.ba
- */
- #include <iostream>
- #include <deque>
- bool parnost(int a){
- if(a%2 == 0) return true;
- return false;
- }
- int suma_cifara(int a){
- int suma(0);
- while(a != 0){
- suma += a%10;
- a /= 10;
- }
- return suma;
- }
- std::deque<int> IzdvojiElemente(std::deque<int> a, bool x){
- std::deque<int> b;
- std::deque<int> c;
- for(int i=0; i<a.size(); i++){
- if(parnost(suma_cifara(a.at(i))))
- b.push_front(a.at(i));
- else
- c.push_front(a.at(i));
- }
- if(x) return b;
- else return c;
- }
- int main ()
- {
- std::cout << "Koliko zelite unijeti elemenata: ";
- int n;
- std::cin >> n;
- if(n < 1){
- std::cout << "Broj elemenata mora biti veci od 0!";
- return 0;
- }
- int element;
- std::deque<int> a;
- std::cout << "Unesite elemente: ";
- for(int i=0; i<n; i++){
- std::cin >> element;
- a.push_front(element);
- }
- std::deque<int> b;
- std::deque<int> c;
- for(int i=0; i<n; i++){
- if(parnost(suma_cifara(a.at(i))))
- b=IzdvojiElemente(a,true);
- else
- c=IzdvojiElemente(a,false);
- }
- for(int i=0; i<b.size(); i++){
- if(i==b.size()-1)
- std::cout << b.at(i);
- else
- std::cout << b.at(i) << ",";
- }
- std::cout << std::endl;
- for(int i=0; i<c.size(); i++){
- if(i==c.size()-1)
- std::cout << c.at(i);
- else
- std::cout << c.at(i) << ",";
- }
- return 0;
- }
- -------------------------------------------------------------------------------------------------------------
- SESTI
- /* TP 2016/2017: Tutorijal 3, Zadatak 6
- Autotestove pisao Haris Hasic. Sva pitanja
- sugestije i prijave gresaka mozete slati na
- mail: hhasic2@etf.unsa.ba
- */
- #include <iostream>
- #include <vector>
- #include <iomanip>
- typedef std::vector<std::vector<int>> matrica;
- matrica KroneckerovProizvod (std::vector<int> a, std::vector<int> b){
- matrica x(a.size(), std::vector<int>(b.size()));
- for(int i=0; i<a.size(); i++){
- for(int j=0; j<b.size(); j++){
- x[i][j] = a[i]*b[j];
- }
- }
- return x;
- }
- int NajvecaSirina(matrica a){
- int brojac(0);
- int max(0);
- for(std::vector<int> red:a) {
- for(int y:red) { // Probajte sa rangovskim petljama
- int temp(y);
- if(temp < 0)
- brojac+=1;
- while(temp%10 != 0){
- temp = temp/10;
- brojac++;
- }
- if(brojac > max)
- max = brojac;
- brojac = 0;
- }
- }
- return max;
- }
- int main ()
- {
- std::cout << "Unesite broj elemenata prvog vektora: ";
- int vel1;
- std::cin >> vel1;
- std::cout << "Unesite elemente prvog vektora: ";
- int element;
- std::vector<int> a;
- for(int i=0; i<vel1; i++){
- std::cin >> element;
- a.push_back(element);
- }
- std::cout << "Unesite broj elemenata drugog vektora: ";
- int vel2;
- std::cin >> vel2;
- std::cout << "Unesite elemente drugog vektora: ";
- std::vector<int> b;
- for(int i=0; i<vel2; i++){
- std::cin >> element;
- b.push_back(element);
- }
- matrica mat = KroneckerovProizvod(a,b);
- std::cout << std::endl;
- for(int i=0; i<vel1; i++){
- for(int j=0; j<vel2; j++){
- std::cout << std::right << std::setw(NajvecaSirina(mat)+1) << mat[i][j];
- }
- std::cout << std::endl;
- }
- return 0;
- }
- ----------------------------------------------------------------------------------------------------
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement