Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
2
20231104-KursPodstawowyALX
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Patryk Czarnik
20231104-KursPodstawowyALX
Commits
cd93913d
Commit
cd93913d
authored
Dec 03, 2023
by
Patryk Czarnik
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Przykłady funkcji "Geometria" i "JednoskiMiary"
parent
11710822
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
234 additions
and
0 deletions
+234
-0
Geometria.java
src/main/java/p08_funkcje/przyklady/Geometria.java
+37
-0
GeometriaProgram.java
src/main/java/p08_funkcje/przyklady/GeometriaProgram.java
+59
-0
GeometriaTest.java
src/main/java/p08_funkcje/przyklady/GeometriaTest.java
+20
-0
JednostkiMiary.java
src/main/java/p08_funkcje/przyklady/JednostkiMiary.java
+60
-0
ProgramOkienkowy.java
src/main/java/p08_funkcje/przyklady/ProgramOkienkowy.java
+58
-0
No files found.
src/main/java/p08_funkcje/przyklady/Geometria.java
0 → 100644
View file @
cd93913d
package
p08_funkcje
.
przyklady
;
public
class
Geometria
{
public
static
double
poleKwadratu
(
double
a
)
{
return
a
*
a
;
}
public
static
double
obwodKwadratu
(
double
a
)
{
return
4
*
a
;
}
public
static
double
poleProstokata
(
double
a
,
double
b
)
{
return
a
*
b
;
}
public
static
double
obwodProstokata
(
double
a
,
double
b
)
{
return
2
*
a
+
2
*
b
;
}
public
static
double
poleKola
(
double
r
)
{
return
Math
.
PI
*
r
*
r
;
}
public
static
double
obwodKola
(
double
r
)
{
return
Math
.
PI
*
2
*
r
;
}
public
static
double
poleTrojkata
(
double
a
,
double
b
,
double
c
)
{
double
p
=
obwodTrojkata
(
a
,
b
,
c
)
/
2
;
return
Math
.
sqrt
(
p
*(
p
-
a
)*(
p
-
b
)*(
p
-
c
));
}
public
static
double
obwodTrojkata
(
double
a
,
double
b
,
double
c
)
{
return
a
+
b
+
c
;
}
}
src/main/java/p08_funkcje/przyklady/GeometriaProgram.java
0 → 100644
View file @
cd93913d
package
p08_funkcje
.
przyklady
;
import
java.util.Scanner
;
public
class
GeometriaProgram
{
public
static
void
main
(
String
[]
args
)
{
@SuppressWarnings
(
"resource"
)
Scanner
scanner
=
new
Scanner
(
System
.
in
);
petla:
while
(
true
)
{
System
.
out
.
println
(
"\nWybierz figurę lub operację:"
);
System
.
out
.
println
(
" K - kwadrat"
);
System
.
out
.
println
(
" O - koło"
);
System
.
out
.
println
(
" P - prostokąt"
);
System
.
out
.
println
(
" T - trójkąt"
);
// System.out.println(" KM - przelicz kilometry na mile");
// System.out.println(" MK - przelicz mile na kilometry");
// System.out.println(" CF - przelicz °C na °F");
// System.out.println(" FC - przelicz °F na °C");
System
.
out
.
println
(
" Q - zakończ"
);
String
wybor
=
scanner
.
next
().
toUpperCase
();
switch
(
wybor
)
{
case
"Q"
->
{
break
petla
;
}
case
"K"
->
{
System
.
out
.
print
(
"Podaj długość boku kwadratu: "
);
double
a
=
scanner
.
nextDouble
();
double
pole
=
Geometria
.
poleKwadratu
(
a
);
double
obwod
=
Geometria
.
obwodKwadratu
(
a
);
System
.
out
.
printf
(
"Dla kwadratu o boku %.3f pole wynosi %.3f, a obwód %.3f\n"
,
a
,
pole
,
obwod
);
}
case
"O"
->
{
System
.
out
.
print
(
"Podaj promień koła: "
);
double
r
=
scanner
.
nextDouble
();
double
pole
=
Geometria
.
poleKola
(
r
);
double
obwod
=
Geometria
.
obwodKola
(
r
);
System
.
out
.
printf
(
"Dla koła o promieniu %.3f pole wynosi %.3f, a obwód %.3f\n"
,
r
,
pole
,
obwod
);
}
case
"P"
->
{
System
.
out
.
print
(
"Podaj dwie długości boków prostokąta: "
);
double
a
=
scanner
.
nextDouble
();
double
b
=
scanner
.
nextDouble
();
double
pole
=
Geometria
.
poleProstokata
(
a
,
b
);
double
obwod
=
Geometria
.
obwodProstokata
(
a
,
b
);
System
.
out
.
printf
(
"Dla prostokąta o bokach %.3f i %.3f pole wynosi %.3f, a obwód %.3f\n"
,
a
,
b
,
pole
,
obwod
);
}
default
->
{
System
.
out
.
println
(
"Nieznane polecenie "
+
wybor
);
}
}
}
System
.
out
.
println
(
"Dzięki, miłego dnia!"
);
}
}
src/main/java/p08_funkcje/przyklady/GeometriaTest.java
0 → 100644
View file @
cd93913d
package
p08_funkcje
.
przyklady
;
public
class
GeometriaTest
{
public
static
void
main
(
String
[]
args
)
{
System
.
out
.
println
(
Geometria
.
poleKwadratu
(
5
));
System
.
out
.
println
(
Geometria
.
poleKwadratu
(
6.5
));
System
.
out
.
println
(
Geometria
.
obwodKwadratu
(
5
));
System
.
out
.
println
(
Geometria
.
obwodKwadratu
(
6.5
));
System
.
out
.
println
();
System
.
out
.
println
(
Geometria
.
poleProstokata
(
3
,
4
));
System
.
out
.
println
(
Geometria
.
poleProstokata
(
6.5
,
3.33
));
System
.
out
.
println
(
Geometria
.
obwodProstokata
(
3
,
4
));
System
.
out
.
println
(
Geometria
.
obwodProstokata
(
6.5
,
3.33
));
System
.
out
.
println
();
}
}
src/main/java/p08_funkcje/przyklady/JednostkiMiary.java
0 → 100644
View file @
cd93913d
package
p08_funkcje
.
przyklady
;
public
class
JednostkiMiary
{
private
static
final
double
PRZELICZNIK_KM_MILE
=
1.609344
;
// https://pl.wikipedia.org/wiki/Mila_mi%C4%99dzynarodowa
public
static
double
mile_na_km
(
double
mile
)
{
return
mile
*
PRZELICZNIK_KM_MILE
;
}
public
static
double
km_na_mile
(
double
km
)
{
return
km
/
PRZELICZNIK_KM_MILE
;
}
// Stopnie Celsjusza na Fahrenheita i odwrotnie
// https://pl.wikipedia.org/wiki/Skala_Fahrenheita
public
static
double
c_na_f
(
double
c
)
{
// To jest źle, bo dzielenie 9/5 daje wynik 1
// return 32 + 9/5 * c;
// Poprawne zapisy:
// return c * 9 / 5 + 32;
// return 32.0 + 9.0 / 5.0 * c;
// return 32 + 9. / 5. * c;
return
32
+
1.8
*
c
;
}
public
static
double
f_na_c
(
double
f
)
{
// Niepoprawne, bo 5/9 daje wynik 0
// return 5/9 * (f - 32);
// Poprawne zapisy:
// return 5./9. * (f - 32.);
return
(
f
-
32
)
/
1.8
;
}
public
static
void
main
(
String
[]
args
)
{
// Tutaj w main wpiszemy tylko przykładowe wywołania funkcji,
// aby sprawdzić, czy one dobrze działają.
// To nie jest "praktyczny program" dla użytkownika.
System
.
out
.
println
(
"100 mil = "
+
mile_na_km
(
100
)
+
" km"
);
System
.
out
.
println
(
"300 mil = "
+
mile_na_km
(
300
)
+
" km"
);
System
.
out
.
println
(
"100 km = "
+
km_na_mile
(
100
)
+
" mil"
);
System
.
out
.
println
(
"160 km = "
+
km_na_mile
(
160
)
+
" mil"
);
System
.
out
.
printf
(
"%.1f km = %.1f mil\n"
,
160.0
,
km_na_mile
(
160
));
System
.
out
.
println
();
System
.
out
.
println
(
" 0 C = "
+
c_na_f
(
0
)
+
" F"
);
System
.
out
.
println
(
" 37 C = "
+
c_na_f
(
37
)
+
" F"
);
System
.
out
.
println
(
"100 C = "
+
c_na_f
(
100
)
+
" F"
);
System
.
out
.
println
();
System
.
out
.
println
(
" 0 F = "
+
f_na_c
(
0
)
+
" C"
);
System
.
out
.
println
(
" 50 F = "
+
f_na_c
(
50
)
+
" C"
);
System
.
out
.
println
(
"100 F = "
+
f_na_c
(
100
)
+
" C"
);
}
}
src/main/java/p08_funkcje/przyklady/ProgramOkienkowy.java
0 → 100644
View file @
cd93913d
package
p08_funkcje
.
przyklady
;
import
java.util.Random
;
import
javax.swing.JOptionPane
;
public
class
ProgramOkienkowy
{
public
static
void
main
(
String
[]
args
)
{
Random
random
=
new
Random
();
String
[]
figury
=
{
"kwadrat"
,
"koło"
,
"prostokąt"
,
"trójkąt"
};
int
poczatkowyWybor
=
random
.
nextInt
(
figury
.
length
);
String
figura
=
(
String
)
JOptionPane
.
showInputDialog
(
null
,
"Wybierz rodzaj figury"
,
"Wybór"
,
JOptionPane
.
QUESTION_MESSAGE
,
null
,
figury
,
figury
[
poczatkowyWybor
]);
if
(
figura
==
null
)
{
return
;
}
switch
(
figura
)
{
case
"kwadrat"
->
{
double
a
=
Double
.
parseDouble
(
JOptionPane
.
showInputDialog
(
"Podaj długość boku:"
));
double
pole
=
Geometria
.
poleKwadratu
(
a
);
double
obwod
=
Geometria
.
obwodKwadratu
(
a
);
JOptionPane
.
showMessageDialog
(
null
,
"Pole: "
+
pole
+
"\nObwód: "
+
obwod
);
}
case
"koło"
->
{
double
r
=
Double
.
parseDouble
(
JOptionPane
.
showInputDialog
(
"Podaj promień koła:"
));
double
pole
=
Geometria
.
poleKola
(
r
);
double
obwod
=
Geometria
.
obwodKola
(
r
);
JOptionPane
.
showMessageDialog
(
null
,
"Pole: "
+
pole
+
"\nObwód: "
+
obwod
);
}
case
"prostokąt"
->
{
double
a
=
Double
.
parseDouble
(
JOptionPane
.
showInputDialog
(
"Podaj długość 1. boku:"
));
double
b
=
Double
.
parseDouble
(
JOptionPane
.
showInputDialog
(
"Podaj długość 2. boku:"
));
double
pole
=
Geometria
.
poleProstokata
(
a
,
b
);
double
obwod
=
Geometria
.
obwodProstokata
(
a
,
b
);
JOptionPane
.
showMessageDialog
(
null
,
"Pole: "
+
pole
+
"\nObwód: "
+
obwod
);
}
case
"trójkąt"
->
{
double
a
=
Double
.
parseDouble
(
JOptionPane
.
showInputDialog
(
"Podaj długość 1. boku:"
));
double
b
=
Double
.
parseDouble
(
JOptionPane
.
showInputDialog
(
"Podaj długość 2. boku:"
));
double
c
=
Double
.
parseDouble
(
JOptionPane
.
showInputDialog
(
"Podaj długość 3. boku:"
));
double
pole
=
Geometria
.
poleTrojkata
(
a
,
b
,
c
);
double
obwod
=
Geometria
.
obwodTrojkata
(
a
,
b
,
c
);
JOptionPane
.
showMessageDialog
(
null
,
"Pole: "
+
pole
+
"\nObwód: "
+
obwod
);
}
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment