import java.util.locale; import java.util.scanner; public class Plecak {

Podobne dokumenty
Metody Metody, parametry, zwracanie wartości

Java Programowanie Obiektowe Ćwiczenie 1- wprowadzenie

Pętle while, for, do while, instrukcje break, continue, switch 1. Pętle

Projektowanie algorytmów rekurencyjnych

Wybrane algorytmy tablicowe

dr inż. Piotr Czapiewski Tworzenie aplikacji w języku Java Laboratorium 1

Wykład 4: Klasy i Metody

Opis zagadnieo 1-3. Iteracja, rekurencja i ich realizacja

Kompilacja javac prog.java powoduje wyprodukowanie kilku plików o rozszerzeniu.class, m.in. Main.class wykonanie: java Main

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Wykład 7: Pakiety i Interfejsy

Języki i metody programowania Java Lab1 Zofia Kruczkiewicz

Podstawy obiektowości

Wprowadzanie danych z klawiatury. Wyjątki związane z wprowadzaniem danych, przekroczeniem rozmiaru tablicy, dzieleniem przez zero itd.

Programowanie, algorytmy i struktury danych

Podstawy programowania obiektowego

Programowanie - instrukcje sterujące

Programowanie obiektowe

Throwable. Wyjatek_1(int x_) { x = x_; } int podaj_x()

Programowanie w Javie Lista nr 1. Wybieramy kategorię Java, a wśród Projektów Java Application i [NEXT]

Programowanie obiektowe

Liczby pseudolosowe. Math. Różne sposoby generowania liczb pseudolosowych. Wybrane metody klasy Math

struct Student { char nazwisko[30]; int wiek; float ocena; }; #define MAX_ROZMIAR 3 Student lista_studentow[max_rozmiar];

Algorytmy z powrotami. Algorytm minimax

Plik klasy. h deklaracje klas

Rozwiązania zadań z Programowania Obiektowego

Programowanie obiektowe i zdarzeniowe

Języki i metody programowania Java Lab2 podejście obiektowe

Programowanie obiektowe

Wykład 4. Klasa List Kolejki Stosy Słowniki

Ogólne wiadomości o grafach

wiczenie 1 Podstawy j zyka Java. Instrukcje warunkowe

Wykład 5: Więcej o Klasach i Metodach

Temat: Technika zachłanna. Przykłady zastosowania. Własno wyboru zachłannego i optymalnej podstruktury.

Algorytmy tekstowe. Andrzej Jastrz bski. Akademia ETI

Laboratorium z przedmiotu: Inżynieria Oprogramowania INEK Instrukcja 7

Podejście obiektowe. Tablice obiektów Przykład 1 metody i atrybuty statyczne oraz niestatyczne

WYJĄTKI. Jest ona jednak czasochłonna i prowadzi do duŝego zapotrzebowania na zasoby systemu.

Przykład -

Zofia Kruczkiewicz, Programowanie obiektowe - java, wykład 2 1

Systemy Rozproszone - Ćwiczenie 6

KLASY, INTERFEJSY, ITP

PODSTAWOWE ELEMENTY JĘZYKA JAVA INSTRUKCJE 1. Pętle

Wątki. Definiowanie wątków jako klas potomnych Thread. Nadpisanie metody run().

Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com

Klasy i obiekty cz II

Projektowanie klas c.d. Projektowanie klas przykład

Języki i metody programowania Java INF302W Wykład 2 (część 1)

Laboratorium 03: Podstawowe konstrukcje w języku Java [2h]

JAVA. Platforma JSE: Środowiska programistyczne dla języka Java. Wstęp do programowania w języku obiektowym. Opracował: Andrzej Nowak

Dla każdej operacji łącznie tworzenia danych i zapisu ich do pliku przeprowadzić pomiar czasu wykonania polecenia. Wyniki przedstawić w tabelce.

Podejście obiektowe. Tablice (1) obiektów

Podstawy programowania obiektowego

Programowanie i projektowanie obiektowe

K4/D. Partyniewicz 3,5. using System; using System.Collections.Generic; using System.Text;

Podstawy programowania obiektowego

Języki i metody programowania Java. Wykład 2 (część 2)

STRUMIENIE TEKSTOWE WEJŚCIOWE WPROWADZANIE DANYCH STRUMIENIE BAJTOWE, STRUMIENIE TEKSTOWE

Podstawy i języki programowania

PARADYGMATY PROGRAMOWANIA Wykład 3

Podstawy Java. Część II. mgr inż.marcin Borkowski

Klasa bazowa i klasy potomne - doskonalenie umiejtnoci projektowania i wykorzystania klas (45 min)

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1

public enum Environment { Development("Deweloperskie"), Test("Testowe"), Production("Produkcyjne"); private String name;

2. Tablice. Tablice jednowymiarowe - wektory. Algorytmy i Struktury Danych

Przypomnienie o klasach i obiektach

Język JAVA podstawy. Wykład 4, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Tworzenie aplikacji w języku Java

Kurs programowania. Wykład 1. Wojciech Macyna. 3 marca 2016

import java.util.*; public class ListExample { public static void main(string args[]) { List<String> lista1= new ArrayList<String> ();

JAVA- wykład 3 Wprowadzanie danych Typ wyliczeniowy Tablice

Wykład 12. Programowanie serwera MS SQL 2005 w C#

Wprowadzenie do laboratorium. Zasady obowiązujące na zajęciach. Wprowadzenie do narzędzi wykorzystywanych podczas laboratorium.

Algorytmy i Struktury Danych.

Instrukcja 10 Laboratorium 13 Testy akceptacyjne z wykorzystaniem narzędzia FitNesse

Java EE produkcja oprogramowania

#include <iostream.h> #include <conio.h>

Podstawy programowania w lejos

WYKŁAD 8. Funkcje i algorytmy rekurencyjne Proste przykłady. Programy: c3_1.c..., c3_6.c. Tomasz Zieliński

Wstęp do ruby dla programistów javy

Języki i metody programowania Java INF302W Wykład 3 (część 1)

Projektowanie aplikacji internetowych laboratorium

Wstęp do Informatyki

Podstawy języka Java. przygotował:

Interfejsy. Programowanie obiektowe. Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej

Wykład 2: Podstawy Języka

Polimorfizm. dr Jarosław Skaruz

JDK można pobrać ze strony

Zaawansowane aplikacje WWW - laboratorium

Programowanie obiektowe i zdarzeniowe wykład 4 Kompozycja, kolekcje, wiązanie danych

Wykład 8: Obsługa Wyjątków

Aplikacje w środowisku Java

Programowanie obiektowe

1. Co można powiedzieć o poniższym kodzie? public interface I { void m1() {}; static public void m2() {}; void abstract m3();

Microsoft IT Academy kurs programowania

Kiedy potrzebne. Struktura (rekord) Struktura w języku C# Tablice struktur. struktura, kolekcja

Obiektowe programowanie rozproszone Java RMI. Krzysztof Banaś Systemy rozproszone 1

wykład V uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C++ klasy i obiekty wykład V dr Jarosław Mederski Spis Język C++ - klasy

Podstawy języka C++ Maciej Trzebiński. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. Praktyki studenckie na LHC IVedycja,2016r.

Aplikacje w środowisku Java

Transkrypt:

import java.util.locale; import java.util.scanner; public class Plecak {

static double wybierz_zachlannie(double wagi[], double wartosci[], int liczba_towarow, double pojemnosc){ int korzystna = 0; //na pocztek zakładamy, e najkorzystniej wybra pierwsz substancj for(int i = 1; i < liczba_towarow; i++){ //szukamy lepszego wyboru if (wartosci[korzystna]/wagi[korzystna] < wartosci[i]/wagi[i]) korzystna=i; pojemnosc = pojemnosc - wagi[korzystna]; //zmniejszamy pojemno plecaka o wag zabranej substancji if (pojemnosc >= 0) //jeli chcielimy zabra za duo - pojemno stanie si ujemna! System.out.printf(Locale.ENGLISH,wagi[korzystna] + " jednostek substancji o wartosci " + wartosci[korzystna] + "\n"); else System.out.printf(Locale.ENGLISH,(wagi[korzystna] + pojemnosc) + " sporód " + wagi[korzystna] + " jednostek substancji o wartosci " + wartosci[korzystna] + "\n"); //podmieniamy wag i warto wybranej substancji na wag i warto substancji ostatniej na licie wagi[korzystna] = wagi[liczba_towarow - 1]; wartosci[korzystna] = wartosci[liczba_towarow - 1]; return pojemnosc; public static void main(string[] args) { //wczytanie danych Scanner in=new Scanner(System.in); in.uselocale(locale.english); "); "); double pojemnosc; int liczba_towarow; System.out.printf(Locale.ENGLISH,"Podaj pojemnosc plecaka: "); pojemnosc = in.nextdouble(); System.out.printf(Locale.ENGLISH,"Podaj liczbe substancji: "); liczba_towarow = in.nextint(); double wagi[] = new double[liczba_towarow]; double wartosci[] = new double[liczba_towarow]; for(int i=0; i<liczba_towarow; i++){ System.out.printf(Locale.ENGLISH,"Podaj wage " + (i+1) + " towaru: wagi[i] = in.nextdouble(); System.out.printf(Locale.ENGLISH,"Podaj wartosc " + (i+1) + " towaru: wartosci[i] = in.nextdouble(); System.out.printf(Locale.ENGLISH,"Oplaca sie zabrac:\n"); while(pojemnosc > 0 && liczba_towarow > 0){ pojemnosc = wybierz_zachlannie(wagi, wartosci, liczba_towarow, pojemnosc); liczba_towarow--;

main

1 2 3 4 5 6 7 8 9 10 11 import java.util.locale; import java.util.scanner; public class Planowanie { static int wybierz_zachlannie(int pocz[], int kon[], int liczba_zajec, int dotychczasowy_koniec){ int korzystny = 0; //na pocztek zakładamy, e najkorzystniej wybra pierwszy wykład for(int i = 1; i < liczba_zajec; i++){ //szukamy lepszego wyboru if (kon[korzystny] > kon[i]) korzystny = i; if (pocz[korzystny] >= dotychczasowy_koniec){ //jeli wykład zaczyna si póiej ni dotychczas wybrane - moemy go uwzgldni System.out.printf(Locale.ENGLISH,pocz[korzystny] + " - " + kon[korzystny] + "\n"); dotychczasowy_koniec = kon[korzystny]; //podmieniamy terminy wybranego wykładu na terminy wykładu ostatniego na licie pocz[korzystny] = pocz[liczba_zajec - 1];

kon[korzystny] = kon[liczba_zajec - 1]; return dotychczasowy_koniec; public static void main(string[] args) { //wczytanie danych Scanner in=new Scanner(System.in); in.uselocale(locale.english); int dotychczasowy_koniec = 0; int liczba_zajec; System.out.printf(Locale.ENGLISH,"Podaj liczbe zajec: "); liczba_zajec = in.nextint(); int pocz[] = new int[liczba_zajec]; int kon[] = new int[liczba_zajec]; for(int i=0; i<liczba_zajec; i++){ System.out.printf(Locale.ENGLISH,"Podaj godzine rozpoczecia wykladu numer " + (i+1) + ": "); pocz[i] = in.nextint(); System.out.printf(Locale.ENGLISH,"Podaj godzine zakonczenia wykladu numer " + (i+1) + ": "); kon[i] = in.nextint(); System.out.printf(Locale.ENGLISH,"Maksymalna lista niekolidujcych wykladow moze zawierac:\n"); while(liczba_zajec > 0){ dotychczasowy_koniec = wybierz_zachlannie(pocz, kon, liczba_zajec, dotychczasowy_koniec); liczba_zajec--;

import java.util.locale; import java.util.scanner; public class Piramida { public static void main(string[] args) { //wczytanie danych Scanner in=new Scanner(System.in); in.uselocale(locale.english); int wysokosc; System.out.printf(Locale.ENGLISH,"Podaj wysokosc piramidy: "); wysokosc = in.nextint(); int piramida[][] = new int[wysokosc][wysokosc]; for(int i=0; i<wysokosc; i++){ System.out.printf(Locale.ENGLISH,"Podaj elementy znajdujce si w wierszu numer " + (i+1) + ": \n"); for(int j=0; j<=i; j++){ System.out.printf(Locale.ENGLISH,"element " + (j+1) + ": "); piramida[i][j] = in.nextint(); System.out.printf(Locale.ENGLISH,"Wybrane elementy to kolejno:\n"); int ostatni=0; System.out.printf(Locale.ENGLISH,piramida[0][ostatni]+"\n"); for(int i=1; i<wysokosc; i++){ if(piramida[i][ostatni]>piramida[i][ostatni+1]){ //wybór lepszego z dwóch moliwych elementów System.out.printf(Locale.ENGLISH,piramida[i][ostatni]+"\n"); else{ System.out.printf(Locale.ENGLISH,piramida[i][ostatni+1]+"\n");

ostatni++; import java.util.locale; import java.util.scanner; public class Reszty_dlugie { public static void main(string[] args) { //wczytanie danych Scanner in=new Scanner(System.in); in.uselocale(locale.english); int zlote; int grosze; System.out.printf(Locale.ENGLISH,"Podaj kwote reszty do wydania: \n"); System.out.printf(Locale.ENGLISH,"zl: "); zlote = in.nextint(); System.out.printf(Locale.ENGLISH,"gr: "); grosze = in.nextint(); grosze = 100*zlote + grosze; while(grosze >= 500){ System.out.printf(Locale.ENGLISH,"5zl"); grosze = grosze - 500;

while(grosze >= 200){ System.out.printf(Locale.ENGLISH,"2zl"); grosze = grosze - 200; while(grosze >= 100){ System.out.printf(Locale.ENGLISH,"1zl"); grosze = grosze - 100; while(grosze >= 50){ System.out.printf(Locale.ENGLISH,"50gr"); grosze = grosze - 50; while(grosze >= 20){ System.out.printf(Locale.ENGLISH,"20gr"); grosze = grosze - 20; while(grosze >= 10){ System.out.printf(Locale.ENGLISH,"10gr"); grosze = grosze - 10; while(grosze >= 5){ System.out.printf(Locale.ENGLISH,"5gr"); grosze = grosze - 5; while(grosze >= 2){ System.out.printf(Locale.ENGLISH,"2gr"); grosze = grosze - 2; while(grosze >= 1){ System.out.printf(Locale.ENGLISH,"1gr"); grosze = grosze - 1; System.out.printf(Locale.ENGLISH,"\n"); import java.util.locale; import java.util.scanner; public class Reszty { public static void main(string[] args) { //wczytanie danych Scanner in=new Scanner(System.in); in.uselocale(locale.english);

int nominaly[] = {500,200,100,50,20,10,5,2,1; int n = 0; //aktualnie wydawany nominał (indeks tablicy nominaly) int zlote; int grosze; System.out.printf(Locale.ENGLISH,"Podaj kwote reszty do wydania: \n"); System.out.printf(Locale.ENGLISH,"zl: "); zlote = in.nextint(); System.out.printf(Locale.ENGLISH,"gr: "); grosze = in.nextint(); grosze = 100*zlote + grosze; "zl"); while(grosze > 0){ if(grosze >= nominaly[n]){ if (n<3) System.out.printf(Locale.ENGLISH,nominaly[n]/100 + else System.out.printf(Locale.ENGLISH,nominaly[n] + "gr"); grosze = grosze - nominaly[n]; if (grosze!= 0) System.out.printf(Locale.ENGLISH,","); else n++; System.out.printf(Locale.ENGLISH,"\n");

import java.util.locale; import java.util.scanner; public class Koraliki { static int wybierz_zachlannie(int korale[], int liczba_sznurow, int czas){ int najkrotszy, drugi; //dwa najkrotsze sznury //inicjujemy te wartoci długociami dwóch pierwszych sznurów if (korale[0] < korale[1]){ najkrotszy = 0; drugi = 1; else{ najkrotszy = 1; drugi = 0; for(int i = 2; i < liczba_sznurow; i++){ //szukamy lepszego wyboru if (korale[najkrotszy] > korale[i]){ drugi = najkrotszy; najkrotszy = i; else if (korale[drugi] > korale[i]){ drugi = i; //wyliczamy i dodajemy czas potrzebny na poołczenie sznurów czas = czas + korale[najkrotszy] + korale[drugi]; //podmieniamy długo najkrótszego sznura przez długo nowopowstałego korale[najkrotszy] = korale[najkrotszy] + korale[drugi]; //podmieniamy długo drugiego znalezionego sznura przez długo ostatniego korale[drugi] = korale[liczba_sznurow - 1]; return czas; public static void main(string[] args) { //wczytanie danych Scanner in=new Scanner(System.in); in.uselocale(locale.english); int liczba_sznurow; System.out.printf(Locale.ENGLISH,"Podaj liczbe sznurow korali: "); liczba_sznurow = in.nextint(); int korale[] = new int[liczba_sznurow];

for(int i=0; i<liczba_sznurow; i++){ System.out.printf(Locale.ENGLISH,"Liczba korali na sznurze nr " + (i+1) + ": "); korale[i] = in.nextint(); sznur int czas = 0; while(liczba_sznurow > 1){ //dopóki nie połczymy wszystkich w jeden wybierz_zachlannie(korale, liczba_sznurow, czas); liczba_sznurow--; System.out.printf(Locale.ENGLISH,"Potrzeba przynajmniej " + czas + " sekund.\n"); 5 80 45 56 62 79

4 5 6 6 1000 1200 1100 1300 1100 1100 1200 1300 1000 1300 1500 2100