Operatory arytmetyczne i porównania
Poznaj operatory +, -, *, /, %%, %/% oraz operatory porównania w R.
Operatory arytmetyczne i porównania to bezpłatna lekcja R Academy na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej R Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs R Academy zawiera 4 lekcji w sumie.
Wprowadzenie do operatorów w R
Operatory to symbole, które nakazują R wykonywanie określonych działań. W tej lekcji omówimy operatory arytmetyczne i porównania — podstawę każdego programu w R.
R obsługuje wszystkie standardowe działania matematyczne, a także kilka unikalnych, takich jak modulo i dzielenie całkowite.
# Basic arithmetic in R
x <- 10
y <- 3
cat('x =', x, ', y =', y, '
')Dodawanie i odejmowanie
Operatory + i - działają dokładnie tak jak w matematyce. Można je stosować jednocześnie do pojedynczych wartości lub całych wektorów.
price <- 49.99
discount <- 5.00
final_price <- price - discount
tax <- final_price + 3.50
cat('Final price with tax:', tax, '
')Mnożenie i dzielenie
Użyj * do mnożenia i / do dzielenia. Dzielenie w R zawsze zwraca liczbę dziesiętną (double), nawet gdy dzielone są liczby całkowite.
width <- 8
height <- 5
area <- width * height
half_area <- area / 2
cat('Area:', area, '
')
cat('Half area:', half_area, '
')
cat('7 / 2 =', 7 / 2, '
') # returns 3.5Potęgowanie za pomocą ^
Użyj ^ (lub **), aby podnieść liczbę do potęgi. Jest to przydatne w obliczeniach naukowych i wyrażeniach wielomianowych.
side <- 4
area_square <- side ^ 2
cat('Area of square:', area_square, '
')
base <- 2
cat('2^8 =', base ^ 8, '
')
cat('Square root of 16:', 16 ^ 0.5, '
')Operator modulo %%
Operator %% zwraca resztę z dzielenia. Jest niezwykle przydatny do sprawdzania, czy liczba jest parzysta lub nieparzysta, a także do cyklicznego przechodzenia przez wartości.
# Check if a number is even or odd
num <- 17
remainder <- num %% 2
cat(num, 'is', ifelse(remainder == 0, 'even', 'odd'), '
')
# Cycle through hours (0-23)
minutes <- 150
hours <- minutes %% 60
cat('150 minutes =', hours, 'minutes past the hour
')Dzielenie całkowite %/%
Operator %/% wykonuje dzielenie całkowite (z zaokrągleniem w dół), zwracając wyłącznie iloraz całkowity i pomijając resztę. Można myśleć o nim jak o obliczaniu, ile pełnych razy jedna liczba mieści się w drugiej.
total_items <- 23
box_size <- 5
full_boxes <- total_items %/% box_size
leftover <- total_items %% box_size
cat('Full boxes:', full_boxes, '
')
cat('Leftover items:', leftover, '
')
cat('Check: 7 %/% 2 =', 7 %/% 2, '
')Równość i nierówność
Operatory porównania zwracają TRUE lub FALSE. Użyj ==, aby sprawdzić równość, oraz !=, aby sprawdzić nierówność. Uwaga: == różni się od = (przypisania).
score <- 85
passing_grade <- 60
cat('Did student pass?', score >= passing_grade, '
')
cat('Is score exactly 100?', score == 100, '
')
cat('Score is not 85?', score != 85, '
')Mniejsze niż i większe niż
Użyj <, >, <= i >= do porównań porządkujących. Działają one na liczbach, napisach (alfabetycznie), a nawet datach.
temp_c <- 37.2
normal_temp <- 37.0
cat('Fever?', temp_c > normal_temp, '
')
cat('Hypothermia?', temp_c < 35.0, '
')
cat('Normal or above?', temp_c >= normal_temp, '
')
# Works on strings too
cat('apple < banana:', 'apple' < 'banana', '
')Porównywanie wektorów
Po zastosowaniu operatorów porównania do wektorów R porównuje elementy jeden po drugim i zwraca wektor logiczny. Nazywa się to wektoryzacją i jest jedną z podstawowych cech R.
ages <- c(12, 25, 17, 34, 8)
cat('Ages:', ages, '
')
cat('Over 18:', ages > 18, '
')
cat('Exactly 17:', ages == 17, '
')
# Count how many are adults
cat('Number of adults:', sum(ages >= 18), '
')Łączenie operatorów arytmetycznych i porównania
Możesz łączyć operatory arytmetyczne i porównania w jednym wyrażeniu. R najpierw wykonuje działania arytmetyczne, a następnie porównania. Umożliwia to tworzenie zwięzłych warunków.
# BMI check
weight_kg <- 70
height_m <- 1.75
bmi <- weight_kg / (height_m ^ 2)
cat('BMI:', round(bmi, 1), '
')
cat('Healthy BMI (18.5-24.9)?', bmi >= 18.5 & bmi <= 24.9, '
')
# Discount eligibility
total <- 120
cat('Qualifies for discount?', total >= 100, '
')Tabela podsumowująca operatory
Oto szybka ściąga dotycząca wszystkich operatorów arytmetycznych i porównania w R:
+— dodawanie-— odejmowanie*— mnożenie/— dzielenie (zawsze zwraca double)^— potęgowanie%%— modulo (reszta)%/%— dzielenie całkowite==,!=— równość, nierówność<,>,<=,>=— porządek
# Quick demo of all operators
x <- 10
y <- 3
cat('10 + 3 =', x + y, '
')
cat('10 - 3 =', x - y, '
')
cat('10 * 3 =', x * y, '
')
cat('10 / 3 =', x / y, '
')
cat('10 %% 3 =', x %% y, '
')
cat('10 %/% 3 =', x %/% y, '
')
cat('10 > 3 =', x > y, '
')Szybkie sprawdzenie
Jaki wynik w R daje wyrażenie 17 %% 5?
Powtórzenie: operatory i wyrażenia
Świetna praca! Oto najważniejsze informacje z tej lekcji:
- R udostępnia operatory arytmetyczne:
+,-,*,/,^,%%,%/% %%zwraca resztę, a%/%— iloraz całkowity- Operatory porównania (
==,!=,<,>itd.) zwracająTRUElubFALSE - Operatory są wektoryzowane — działają na wektorach element po elemencie
- Działania arytmetyczne są wykonywane przed porównaniami (standardowa kolejność działań)
# Final example: find numbers divisible by 3
nums <- 1:15
divisible_by_3 <- nums[nums %% 3 == 0]
cat('Numbers 1-15 divisible by 3:', divisible_by_3, '
')Często zadawane pytania
Czy lekcja „Operatory arytmetyczne i porównania” jest bezpłatna?
Tak — pełny tekst „Operatory arytmetyczne i porównania” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu R Academy, przejdź na CoddyKit PRO. Kurs R Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Operatory arytmetyczne i porównania”?
Poznaj operatory +, -, *, /, %%, %/% oraz operatory porównania w R. Ćwiczysz R Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć R Academy?
Nie wymagamy żadnego doświadczenia. R Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.
Ile czasu zajmuje lekcja „Operatory arytmetyczne i porównania”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji R Academy?
Tak. Każda lekcja R Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Operatory arytmetyczne i porównania
- Operatory logiczne i logika boolowska
- Operatory przypisania i specjalne
- Priorytet operatorów i złożone wyrażenia