Tugas

Sains Data Programming

Logo

PRAKTIKUM

1. Identifikasi Tipe Data

# R
a <- 42
b <- 3.14
c <- "Hello"
d <- FALSE
e <- c(1, 2, 3)
f <- list(name = "Alice", age = 25)

# Mengidentifikasi tipe data
cat("Tipe data a:", class(a), "\n")  # "numeric" - a adalah numeric (bilangan, termasuk integer dan float)
## Tipe data a: numeric
cat("Tipe data b:", class(b), "\n")  # "numeric" - b adalah numeric (bilangan, termasuk integer dan float)
## Tipe data b: numeric
cat("Tipe data c:", class(c), "\n")  # "character" - c adalah character (teks)
## Tipe data c: character
cat("Tipe data d:", class(d), "\n")  # "logical" - d adalah logical (TRUE atau FALSE)
## Tipe data d: logical
cat("Tipe data e:", class(e), "\n")  # "numeric" - e adalah numeric vector (vektor yang berisi bilangan)
## Tipe data e: numeric
cat("Tipe data f:", class(f), "\n")  # "list" - f adalah list (daftar yang bisa berisi berbagai tipe data)
## Tipe data f: list

2. Variabel dan Manipulasi Data

# R
x <- 20
y <- 5
text1 <- "Data"
text2 <- "Science"

# 1. Update the value of x by adding 10
x <- x + 10
cat("Updated x:", x, "\n")  # Output: Updated x: 30
## Updated x: 30
# 2. Concatenate text1 and text2 into "Data Science"
concatenated_text <- paste(text1, text2)
cat("Concatenated text:", concatenated_text, "\n")  # Output: Concatenated text: Data Science
## Concatenated text: Data Science
# 3. Convert the concatenated text to uppercase
uppercase_text <- toupper(concatenated_text)
cat("Uppercase text:", uppercase_text, "\n")  # Output: Uppercase text: DATA SCIENCE
## Uppercase text: DATA SCIENCE

3. Operasi Aritmatika

# R
a <- 15
b <- 4

# 1. Compute the sum, difference, product, division, and modulo of a and b
sum_result <- a + b
difference_result <- a - b
product_result <- a * b
division_result <- a / b
modulo_result <- a %% b

cat("Sum:", sum_result, "\n")  # Output: Sum: 19
## Sum: 19
cat("Difference:", difference_result, "\n")  # Output: Difference: 11
## Difference: 11
cat("Product:", product_result, "\n")  # Output: Product: 60
## Product: 60
cat("Division:", division_result, "\n")  # Output: Division: 3.75
## Division: 3.75
cat("Modulo:", modulo_result, "\n")  # Output: Modulo: 3
## Modulo: 3
# 2. Compute a raised to the power of b
power_result <- a ^ b
cat("Power:", power_result, "\n")  # Output: Power: 50625
## Power: 50625
# 3. Create a new variable c = a / b and convert it to an integer
c <- as.integer(a / b)
cat("Integer c:", c, "\n")  # Output: Integer c: 3
## Integer c: 3

4. Operasi String

# R
text <- "Hello, Data Science!"

# 1. Extract the first 5 characters from the text
first_five <- substr(text, 1, 5)
cat("First 5 characters:", first_five, "\n")  # Output: First 5 characters: Hello
## First 5 characters: Hello
# 2. Count the number of characters in the text
char_count <- nchar(text)
cat("Number of characters:", char_count, "\n")  # Output: Number of characters: 19
## Number of characters: 20
# 3. Convert the text to lowercase
lowercase_text <- tolower(text)
cat("Lowercase text:", lowercase_text, "\n")  # Output: Lowercase text: hello, data science!
## Lowercase text: hello, data science!

5. Perbandingan dan Logika Operator

# R
x <- 7
y <- 10

# 1. Check if x is greater than y
cat("x > y:", x > y, "\n")  # Output: x > y: FALSE
## x > y: FALSE
# 2. Check if x is less than or equal to y
cat("x <= y:", x <= y, "\n")  # Output: x <= y: TRUE
## x <= y: TRUE
# 3. Check if x is not equal to y
cat("x != y:", x != y, "\n")  # Output: x != y: TRUE
## x != y: TRUE
# 4. Evaluate the expression (x > 5) AND (y < 20)
cat("(x > 5) & (y < 20):", (x > 5) & (y < 20), "\n")  # Output: (x > 5) & (y < 20): TRUE
## (x > 5) & (y < 20): TRUE

6. Konfersi Tipe Data

# R
num_str <- "123"
num_float <- 45.67

# 1. Convert num_str to an integer and add 10
num_int <- as.integer(num_str) + 10
cat("Converted num_str + 10:", num_int, "\n")  # Output: Converted num_str + 10: 133
## Converted num_str + 10: 133
# 2. Convert num_float to an integer
num_float_to_int <- as.integer(num_float)
cat("Converted num_float to integer:", num_float_to_int, "\n")  # Output: Converted num_float to integer: 45
## Converted num_float to integer: 45
# 3. Convert the converted num_float back to a string
num_float_to_str <- as.character(num_float_to_int)
cat("Converted num_float back to string:", num_float_to_str, "\n")  # Output: Converted num_float back to string: 45
## Converted num_float back to string: 45

BONUS

# R
# Meminta input dari pengguna
name <- readline(prompt = "Enter your name: Nabil ")
## Enter your name: Nabil
age <- readline(prompt = "Enter your age: 19 ")
## Enter your age: 19
hometown <- readline(prompt = "Enter your hometown: Deltamas ")
## Enter your hometown: Deltamas
# Mencetak output
cat("Hello", name, ", you are", age, "years old and from", hometown, ".\n")
## Hello  , you are  years old and from  .
LS0tDQp0aXRsZTogIlR1Z2FzIg0Kc3VidGl0bGU6ICJTYWlucyBEYXRhIFByb2dyYW1taW5nIg0KYXV0aG9yOiAiTXVoYW1tYWQgTmFiaWwgUHJhdGFtYSINCmRhdGU6ICJgciBmb3JtYXQoU3lzLkRhdGUoKSwgJyVCICVkLCAlWScpYCINCm91dHB1dDoNCiAgcm1kZm9ybWF0czo6cmVhZHRoZWRvd246DQogICAgc2VsZl9jb250YWluZWQ6IHRydWUNCiAgICB0aHVtYm5haWxzOiB0cnVlDQogICAgbGlnaHRib3g6IHRydWUNCiAgICBnYWxsZXJ5OiB0cnVlDQogICAgbGliX2RpcjogbGlicw0KICAgIGRmX3ByaW50OiAicGFnZWQiDQogICAgY29kZV9mb2xkaW5nOiAic2hvdyINCiAgICBjb2RlX2Rvd25sb2FkOiB5ZXMNCiAgICBjc3M6ICJzdHlsZS5jc3MiDQotLS0NCg0KPGltZyBpZD0iaXNpX25hbWEiIHNyYz0iQzovVXNlcnMvTSBOYWJpbCBQcmF0YW1hL09uZURyaXZlL1BpY3R1cmVzL1NjcmVlbnNob3RzL0dhbWJhciBXaGF0c0FwcCAyMDI0LTEyLTA2IHB1a3VsIDEzLjMzLjE1X2MzZmQwZmM3LmpwZyIgYWx0PSJMb2dvIiBzdHlsZT0id2lkdGg6MjAwcHg7IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW46IGF1dG87Ij4NCg0KIyAqKlBSQUtUSUtVTSoqDQoNCiMjIDEuIElkZW50aWZpa2FzaSBUaXBlIERhdGENCmBgYHtyfQ0KIyBSDQphIDwtIDQyDQpiIDwtIDMuMTQNCmMgPC0gIkhlbGxvIg0KZCA8LSBGQUxTRQ0KZSA8LSBjKDEsIDIsIDMpDQpmIDwtIGxpc3QobmFtZSA9ICJBbGljZSIsIGFnZSA9IDI1KQ0KDQojIE1lbmdpZGVudGlmaWthc2kgdGlwZSBkYXRhDQpjYXQoIlRpcGUgZGF0YSBhOiIsIGNsYXNzKGEpLCAiXG4iKSAgIyAibnVtZXJpYyIgLSBhIGFkYWxhaCBudW1lcmljIChiaWxhbmdhbiwgdGVybWFzdWsgaW50ZWdlciBkYW4gZmxvYXQpDQpjYXQoIlRpcGUgZGF0YSBiOiIsIGNsYXNzKGIpLCAiXG4iKSAgIyAibnVtZXJpYyIgLSBiIGFkYWxhaCBudW1lcmljIChiaWxhbmdhbiwgdGVybWFzdWsgaW50ZWdlciBkYW4gZmxvYXQpDQpjYXQoIlRpcGUgZGF0YSBjOiIsIGNsYXNzKGMpLCAiXG4iKSAgIyAiY2hhcmFjdGVyIiAtIGMgYWRhbGFoIGNoYXJhY3RlciAodGVrcykNCmNhdCgiVGlwZSBkYXRhIGQ6IiwgY2xhc3MoZCksICJcbiIpICAjICJsb2dpY2FsIiAtIGQgYWRhbGFoIGxvZ2ljYWwgKFRSVUUgYXRhdSBGQUxTRSkNCmNhdCgiVGlwZSBkYXRhIGU6IiwgY2xhc3MoZSksICJcbiIpICAjICJudW1lcmljIiAtIGUgYWRhbGFoIG51bWVyaWMgdmVjdG9yICh2ZWt0b3IgeWFuZyBiZXJpc2kgYmlsYW5nYW4pDQpjYXQoIlRpcGUgZGF0YSBmOiIsIGNsYXNzKGYpLCAiXG4iKSAgIyAibGlzdCIgLSBmIGFkYWxhaCBsaXN0IChkYWZ0YXIgeWFuZyBiaXNhIGJlcmlzaSBiZXJiYWdhaSB0aXBlIGRhdGEpDQpgYGANCiMjIDIuIFZhcmlhYmVsIGRhbiBNYW5pcHVsYXNpIERhdGENCmBgYHtyfQ0KIyBSDQp4IDwtIDIwDQp5IDwtIDUNCnRleHQxIDwtICJEYXRhIg0KdGV4dDIgPC0gIlNjaWVuY2UiDQoNCiMgMS4gVXBkYXRlIHRoZSB2YWx1ZSBvZiB4IGJ5IGFkZGluZyAxMA0KeCA8LSB4ICsgMTANCmNhdCgiVXBkYXRlZCB4OiIsIHgsICJcbiIpICAjIE91dHB1dDogVXBkYXRlZCB4OiAzMA0KDQojIDIuIENvbmNhdGVuYXRlIHRleHQxIGFuZCB0ZXh0MiBpbnRvICJEYXRhIFNjaWVuY2UiDQpjb25jYXRlbmF0ZWRfdGV4dCA8LSBwYXN0ZSh0ZXh0MSwgdGV4dDIpDQpjYXQoIkNvbmNhdGVuYXRlZCB0ZXh0OiIsIGNvbmNhdGVuYXRlZF90ZXh0LCAiXG4iKSAgIyBPdXRwdXQ6IENvbmNhdGVuYXRlZCB0ZXh0OiBEYXRhIFNjaWVuY2UNCg0KIyAzLiBDb252ZXJ0IHRoZSBjb25jYXRlbmF0ZWQgdGV4dCB0byB1cHBlcmNhc2UNCnVwcGVyY2FzZV90ZXh0IDwtIHRvdXBwZXIoY29uY2F0ZW5hdGVkX3RleHQpDQpjYXQoIlVwcGVyY2FzZSB0ZXh0OiIsIHVwcGVyY2FzZV90ZXh0LCAiXG4iKSAgIyBPdXRwdXQ6IFVwcGVyY2FzZSB0ZXh0OiBEQVRBIFNDSUVOQ0UNCmBgYA0KIyMgMy4gT3BlcmFzaSBBcml0bWF0aWthDQpgYGB7cn0NCiMgUg0KYSA8LSAxNQ0KYiA8LSA0DQoNCiMgMS4gQ29tcHV0ZSB0aGUgc3VtLCBkaWZmZXJlbmNlLCBwcm9kdWN0LCBkaXZpc2lvbiwgYW5kIG1vZHVsbyBvZiBhIGFuZCBiDQpzdW1fcmVzdWx0IDwtIGEgKyBiDQpkaWZmZXJlbmNlX3Jlc3VsdCA8LSBhIC0gYg0KcHJvZHVjdF9yZXN1bHQgPC0gYSAqIGINCmRpdmlzaW9uX3Jlc3VsdCA8LSBhIC8gYg0KbW9kdWxvX3Jlc3VsdCA8LSBhICUlIGINCg0KY2F0KCJTdW06Iiwgc3VtX3Jlc3VsdCwgIlxuIikgICMgT3V0cHV0OiBTdW06IDE5DQpjYXQoIkRpZmZlcmVuY2U6IiwgZGlmZmVyZW5jZV9yZXN1bHQsICJcbiIpICAjIE91dHB1dDogRGlmZmVyZW5jZTogMTENCmNhdCgiUHJvZHVjdDoiLCBwcm9kdWN0X3Jlc3VsdCwgIlxuIikgICMgT3V0cHV0OiBQcm9kdWN0OiA2MA0KY2F0KCJEaXZpc2lvbjoiLCBkaXZpc2lvbl9yZXN1bHQsICJcbiIpICAjIE91dHB1dDogRGl2aXNpb246IDMuNzUNCmNhdCgiTW9kdWxvOiIsIG1vZHVsb19yZXN1bHQsICJcbiIpICAjIE91dHB1dDogTW9kdWxvOiAzDQoNCiMgMi4gQ29tcHV0ZSBhIHJhaXNlZCB0byB0aGUgcG93ZXIgb2YgYg0KcG93ZXJfcmVzdWx0IDwtIGEgXiBiDQpjYXQoIlBvd2VyOiIsIHBvd2VyX3Jlc3VsdCwgIlxuIikgICMgT3V0cHV0OiBQb3dlcjogNTA2MjUNCg0KIyAzLiBDcmVhdGUgYSBuZXcgdmFyaWFibGUgYyA9IGEgLyBiIGFuZCBjb252ZXJ0IGl0IHRvIGFuIGludGVnZXINCmMgPC0gYXMuaW50ZWdlcihhIC8gYikNCmNhdCgiSW50ZWdlciBjOiIsIGMsICJcbiIpICAjIE91dHB1dDogSW50ZWdlciBjOiAzDQpgYGANCiMjIDQuIE9wZXJhc2kgU3RyaW5nDQpgYGB7cn0NCiMgUg0KdGV4dCA8LSAiSGVsbG8sIERhdGEgU2NpZW5jZSEiDQoNCiMgMS4gRXh0cmFjdCB0aGUgZmlyc3QgNSBjaGFyYWN0ZXJzIGZyb20gdGhlIHRleHQNCmZpcnN0X2ZpdmUgPC0gc3Vic3RyKHRleHQsIDEsIDUpDQpjYXQoIkZpcnN0IDUgY2hhcmFjdGVyczoiLCBmaXJzdF9maXZlLCAiXG4iKSAgIyBPdXRwdXQ6IEZpcnN0IDUgY2hhcmFjdGVyczogSGVsbG8NCg0KIyAyLiBDb3VudCB0aGUgbnVtYmVyIG9mIGNoYXJhY3RlcnMgaW4gdGhlIHRleHQNCmNoYXJfY291bnQgPC0gbmNoYXIodGV4dCkNCmNhdCgiTnVtYmVyIG9mIGNoYXJhY3RlcnM6IiwgY2hhcl9jb3VudCwgIlxuIikgICMgT3V0cHV0OiBOdW1iZXIgb2YgY2hhcmFjdGVyczogMTkNCg0KIyAzLiBDb252ZXJ0IHRoZSB0ZXh0IHRvIGxvd2VyY2FzZQ0KbG93ZXJjYXNlX3RleHQgPC0gdG9sb3dlcih0ZXh0KQ0KY2F0KCJMb3dlcmNhc2UgdGV4dDoiLCBsb3dlcmNhc2VfdGV4dCwgIlxuIikgICMgT3V0cHV0OiBMb3dlcmNhc2UgdGV4dDogaGVsbG8sIGRhdGEgc2NpZW5jZSENCmBgYA0KIyMgNS4gUGVyYmFuZGluZ2FuIGRhbiBMb2dpa2EgT3BlcmF0b3INCmBgYHtyfQ0KIyBSDQp4IDwtIDcNCnkgPC0gMTANCg0KIyAxLiBDaGVjayBpZiB4IGlzIGdyZWF0ZXIgdGhhbiB5DQpjYXQoInggPiB5OiIsIHggPiB5LCAiXG4iKSAgIyBPdXRwdXQ6IHggPiB5OiBGQUxTRQ0KDQojIDIuIENoZWNrIGlmIHggaXMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIHkNCmNhdCgieCA8PSB5OiIsIHggPD0geSwgIlxuIikgICMgT3V0cHV0OiB4IDw9IHk6IFRSVUUNCg0KIyAzLiBDaGVjayBpZiB4IGlzIG5vdCBlcXVhbCB0byB5DQpjYXQoInggIT0geToiLCB4ICE9IHksICJcbiIpICAjIE91dHB1dDogeCAhPSB5OiBUUlVFDQoNCiMgNC4gRXZhbHVhdGUgdGhlIGV4cHJlc3Npb24gKHggPiA1KSBBTkQgKHkgPCAyMCkNCmNhdCgiKHggPiA1KSAmICh5IDwgMjApOiIsICh4ID4gNSkgJiAoeSA8IDIwKSwgIlxuIikgICMgT3V0cHV0OiAoeCA+IDUpICYgKHkgPCAyMCk6IFRSVUUNCmBgYA0KIyMgNi4gS29uZmVyc2kgVGlwZSBEYXRhDQpgYGB7cn0NCiMgUg0KbnVtX3N0ciA8LSAiMTIzIg0KbnVtX2Zsb2F0IDwtIDQ1LjY3DQoNCiMgMS4gQ29udmVydCBudW1fc3RyIHRvIGFuIGludGVnZXIgYW5kIGFkZCAxMA0KbnVtX2ludCA8LSBhcy5pbnRlZ2VyKG51bV9zdHIpICsgMTANCmNhdCgiQ29udmVydGVkIG51bV9zdHIgKyAxMDoiLCBudW1faW50LCAiXG4iKSAgIyBPdXRwdXQ6IENvbnZlcnRlZCBudW1fc3RyICsgMTA6IDEzMw0KDQojIDIuIENvbnZlcnQgbnVtX2Zsb2F0IHRvIGFuIGludGVnZXINCm51bV9mbG9hdF90b19pbnQgPC0gYXMuaW50ZWdlcihudW1fZmxvYXQpDQpjYXQoIkNvbnZlcnRlZCBudW1fZmxvYXQgdG8gaW50ZWdlcjoiLCBudW1fZmxvYXRfdG9faW50LCAiXG4iKSAgIyBPdXRwdXQ6IENvbnZlcnRlZCBudW1fZmxvYXQgdG8gaW50ZWdlcjogNDUNCg0KIyAzLiBDb252ZXJ0IHRoZSBjb252ZXJ0ZWQgbnVtX2Zsb2F0IGJhY2sgdG8gYSBzdHJpbmcNCm51bV9mbG9hdF90b19zdHIgPC0gYXMuY2hhcmFjdGVyKG51bV9mbG9hdF90b19pbnQpDQpjYXQoIkNvbnZlcnRlZCBudW1fZmxvYXQgYmFjayB0byBzdHJpbmc6IiwgbnVtX2Zsb2F0X3RvX3N0ciwgIlxuIikgICMgT3V0cHV0OiBDb252ZXJ0ZWQgbnVtX2Zsb2F0IGJhY2sgdG8gc3RyaW5nOiA0NQ0KYGBgDQojIyMgQk9OVVMNCmBgYHtyfQ0KIyBSDQojIE1lbWludGEgaW5wdXQgZGFyaSBwZW5nZ3VuYQ0KbmFtZSA8LSByZWFkbGluZShwcm9tcHQgPSAiRW50ZXIgeW91ciBuYW1lOiBOYWJpbCAiKQ0KYWdlIDwtIHJlYWRsaW5lKHByb21wdCA9ICJFbnRlciB5b3VyIGFnZTogMTkgIikNCmhvbWV0b3duIDwtIHJlYWRsaW5lKHByb21wdCA9ICJFbnRlciB5b3VyIGhvbWV0b3duOiBEZWx0YW1hcyAiKQ0KDQojIE1lbmNldGFrIG91dHB1dA0KY2F0KCJIZWxsbyIsIG5hbWUsICIsIHlvdSBhcmUiLCBhZ2UsICJ5ZWFycyBvbGQgYW5kIGZyb20iLCBob21ldG93biwgIi5cbiIpDQpgYGANCg==