Šajā programmā jūs iemācīsities saskaitīt patskaņu, līdzskaņu, ciparu un atstarpju skaitu noteiktā teikumā Kotlīnā.
1. piemērs: programma patskaņu, līdzskaņu, ciparu un atstarpju skaitīšanai
fun main(args: Array) ( var line = "This website is aw3som3." var vowels = 0 var consonants = 0 var digits = 0 var spaces = 0 line = line.toLowerCase() for (i in 0… line.length - 1) ( val ch = line(i) if (ch == 'a' || ch == 'e' || ch == 'i' || ch == 'o' || ch == 'u') ( ++vowels ) else if (ch in 'a'… 'z') ( ++consonants ) else if (ch in '0'… '9') ( ++digits ) else if (ch == ' ') ( ++spaces ) ) println("Vowels: $vowels") println("Consonants: $consonants") println("Digits: $digits") println("White spaces: $spaces") )
Palaidot programmu, izeja būs:
Patskaņi: 6 līdzskaņi: 11 cipari: 3 atstarpes: 3
Iepriekš minētajā piemērā katrai pārbaudei ir 4 nosacījumi.
- Pirmais nosacījums ir pārbaudīt, vai raksturs ir patskaņs .
- Pārējais nosacījums, kas seko, ja, lai pārbaudītu, vai raksturs ir līdzskaņs vai nē. Kārtībai jābūt vienādai, pretējā gadījumā visi patskaņi tiek uzskatīti arī par līdzskaņiem.
- Trešais nosacījums (else-if) ir pārbaudīt, vai rakstzīme ir no 0 līdz 9 .
- Visbeidzot, pēdējais nosacījums ir pārbaudīt, vai raksturs ir atstarpes raksturs.
Šajā nolūkā mēs esam pazeminājuši līniju, izmantojot toLowerCase()
. Šī ir optimizācija, kas veikta, lai nepārbaudītu lielos burtus no A līdz Z un patskaņus.
Mēs esam izmantojuši length()
funkciju, lai uzzinātu virknes garumu un charAt()
iegūtu rakstzīmi dotajā indeksā (pozīcijā).
Šeit ir ekvivalents Java kods: Java programma, lai teikumā saskaitītu patskaņus un līdzskaņus.
2. piemērs: Programma, lai saskaitītu patskaņus, līdzskaņus, ciparus un atstarpes, izmantojot kad
fun main(args: Array) ( var line = "This website is aw3som3." var vowels = 0 var consonants = 0 var digits = 0 var spaces = 0 line = line.toLowerCase() for (i in 0… line.length - 1) ( val ch = line(i) when (ch) ( 'a', 'e', 'i', 'o', 'u' -> ++vowels in 'a'… 'z' -> ++consonants in '0'… '9' -> ++digits ' ' -> ++spaces ) ) println("Vowels: $vowels") println("Consonants: $consonants") println("Digits: $digits") println("White spaces: $spaces") )
Programmas izvade ir tāda pati kā 1. piemērā.
Šeit jūs varat redzēt, ka mēs izmantojām vienkāršu when
izteicienu, lai noņemtu if-else
paziņojumu. Tas padara kodu daudz mazāk un vieglāk saprotamu.