Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele If/Else Sisäkkäisessä Silmukassa | For-Silmukka
Practice
Projects
Quizzes & Challenges
Visat
Challenges
/
Python-Silmukoiden Opas

bookIf/Else Sisäkkäisessä Silmukassa

if/else-lauseet ovat olennaisia ehtojen lisäämiseksi sisäkkäisiin silmukoihin. Niiden avulla voit suodattaa, käsitellä tai luokitella tietoja, kuten tunnistaa tiettyjä arvoja listoista tai matriiseista.

Soveltakaamme tätä käytännön tehtävään: matkakulujen suodattamiseen. Jos kulu ylittää tietyn budjettirajan, merkitsemme sen "Expensive"; muussa tapauksessa tulostamme alkuperäisen kulun.

Oletetaan, että sinulla on lista matkoista, ja jokaisella matkalla on kuluja eri kategorioista, kuten lennot, hotellit, ruoka ja aktiviteetit. Tavoitteesi on tarkistaa jokainen kulu:

  • Jos kulu ylittää $200, merkitse se Expensive;
  • Muussa tapauksessa tulosta alkuperäinen kulu.
1234567891011121314151617181920212223
# Travel expenses for multiple trips travel_costs = [ [500, 150, 100, 50], # Trip 1 [200, 300, 120, 80], # Trip 2 [180, 220, 130, 170] # Trip 3 ] # Setting outer while loop to work with rows (trips) i = 0 while i < len(travel_costs): j = 0 print(f"Trip {i + 1} expenses: ", end='') # Label for the current trip # Setting inner while loop to work with expenses in the current trip while j < len(travel_costs[i]): if travel_costs[i][j] > 200: # Check if expense is greater than 200 print('Expensive', end=' ') else: print(travel_costs[i][j], end=' ') j += 1 # Move to the next expense print('') # Move to the next line after each trip i += 1 # Move to the next trip
copy
  • Ulkoinen while-silmukka käy läpi jokaisen matkan travel_costs-listassa indeksin i avulla;
  • Sisäinen while-silmukka käy läpi nykyisen matkan kulut indeksin j avulla;
  • if/else-ehto tarkistaa, onko kulu suurempi kuin $200;
  • Kun kaikki matkan kulut on käsitelty, ohjelma siirtyy seuraavalle riville ja jatkaa seuraavaan matkaan.
Tehtävä

Swipe to start coding

Sinulle annetaan lista matkakuluista useille matkoille. Jokainen matka on esitetty sisäkkäisenä listana, joka sisältää erilaisia kuluja, kuten kuljetus, majoitus, ruoka ja aktiviteetit. Tehtävänäsi on käsitellä nämä kulut tunnistamalla "halvat" kulut säilyttäen sama sisäkkäinen rakenne.

  • Sinulle annetaan kaksidimensionaalinen lista (listojen lista), jossa jokainen sisempi lista edustaa yhden matkan kuluja.
  • Käy läpi jokaisen matkan kululista.
  • Korvaa kaikki kulut, jotka ovat 100 dollaria tai vähemmän, arvolla "Cheap", jättäen muut arvot ennalleen.
  • Tallenna muunnetut kulut uuteen kaksidimensionaaliseen listaan samalla rakenteella.

Ratkaisu

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 1. Luku 15
single

single

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

close

bookIf/Else Sisäkkäisessä Silmukassa

Pyyhkäise näyttääksesi valikon

if/else-lauseet ovat olennaisia ehtojen lisäämiseksi sisäkkäisiin silmukoihin. Niiden avulla voit suodattaa, käsitellä tai luokitella tietoja, kuten tunnistaa tiettyjä arvoja listoista tai matriiseista.

Soveltakaamme tätä käytännön tehtävään: matkakulujen suodattamiseen. Jos kulu ylittää tietyn budjettirajan, merkitsemme sen "Expensive"; muussa tapauksessa tulostamme alkuperäisen kulun.

Oletetaan, että sinulla on lista matkoista, ja jokaisella matkalla on kuluja eri kategorioista, kuten lennot, hotellit, ruoka ja aktiviteetit. Tavoitteesi on tarkistaa jokainen kulu:

  • Jos kulu ylittää $200, merkitse se Expensive;
  • Muussa tapauksessa tulosta alkuperäinen kulu.
1234567891011121314151617181920212223
# Travel expenses for multiple trips travel_costs = [ [500, 150, 100, 50], # Trip 1 [200, 300, 120, 80], # Trip 2 [180, 220, 130, 170] # Trip 3 ] # Setting outer while loop to work with rows (trips) i = 0 while i < len(travel_costs): j = 0 print(f"Trip {i + 1} expenses: ", end='') # Label for the current trip # Setting inner while loop to work with expenses in the current trip while j < len(travel_costs[i]): if travel_costs[i][j] > 200: # Check if expense is greater than 200 print('Expensive', end=' ') else: print(travel_costs[i][j], end=' ') j += 1 # Move to the next expense print('') # Move to the next line after each trip i += 1 # Move to the next trip
copy
  • Ulkoinen while-silmukka käy läpi jokaisen matkan travel_costs-listassa indeksin i avulla;
  • Sisäinen while-silmukka käy läpi nykyisen matkan kulut indeksin j avulla;
  • if/else-ehto tarkistaa, onko kulu suurempi kuin $200;
  • Kun kaikki matkan kulut on käsitelty, ohjelma siirtyy seuraavalle riville ja jatkaa seuraavaan matkaan.
Tehtävä

Swipe to start coding

Sinulle annetaan lista matkakuluista useille matkoille. Jokainen matka on esitetty sisäkkäisenä listana, joka sisältää erilaisia kuluja, kuten kuljetus, majoitus, ruoka ja aktiviteetit. Tehtävänäsi on käsitellä nämä kulut tunnistamalla "halvat" kulut säilyttäen sama sisäkkäinen rakenne.

  • Sinulle annetaan kaksidimensionaalinen lista (listojen lista), jossa jokainen sisempi lista edustaa yhden matkan kuluja.
  • Käy läpi jokaisen matkan kululista.
  • Korvaa kaikki kulut, jotka ovat 100 dollaria tai vähemmän, arvolla "Cheap", jättäen muut arvot ennalleen.
  • Tallenna muunnetut kulut uuteen kaksidimensionaaliseen listaan samalla rakenteella.

Ratkaisu

Switch to desktopVaihda työpöytään todellista harjoitusta vartenJatka siitä, missä olet käyttämällä jotakin alla olevista vaihtoehdoista
Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 1. Luku 15
single

single

some-alt