Διαδρομές
/
GDScript
GDScript
/
Ασκήσεις
/
Ειδικός στα χρώματα αντιστάσεων
Ειδικός στα χρώματα αντιστάσεων

Ειδικός στα χρώματα αντιστάσεων

Εύκολο

Εισαγωγή

Αν θέλεις να φτιάξεις κάτι με ένα Raspberry Pi, πιθανότατα θα χρησιμοποιήσεις αντιστάτες. Όπως και στις προηγούμενες ασκήσεις Resistor Color Duo και Resistor Color Trio, θα μετατρέπεις τις χρωματικές ζώνες των αντιστατών σε ετικέτες αναγνώσιμες από τον άνθρωπο.

  • Κάθε αντιστάτης έχει μια τιμή αντίστασης.
  • Οι αντιστάτες είναι μικροί, τόσο μικροί που αν τύπωνες πάνω τους την τιμή αντίστασης, θα ήταν δύσκολο να τη διαβάσεις. Για να ξεπεράσουν αυτό το πρόβλημα, οι κατασκευαστές τυπώνουν πάνω στους αντιστάτες χρωματιστές ζώνες που δηλώνουν την τιμή αντίστασής τους.
  • Κάθε ζώνη λειτουργεί ως ψηφίο ενός αριθμού. Για παράδειγμα, αν τύπωναν μια καφέ ζώνη (τιμή 1) και μετά μια πράσινη ζώνη (τιμή 5), αυτό θα αντιστοιχούσε στον αριθμό 15.

Οδηγίες

Σε αυτή την άσκηση θα φτιάξεις ένα χρήσιμο πρόγραμμα, ώστε να μη χρειάζεται να θυμάσαι τις τιμές των ζωνών. Το πρόγραμμα θα παίρνει ως είσοδο 1, 4 ή 5 χρώματα και θα βγάζει τη σωστή τιμή, σε ωμ. Οι χρωματικές ζώνες κωδικοποιούνται ως εξής:

  • Black: 0
  • Brown: 1
  • Red: 2
  • Orange: 3
  • Yellow: 4
  • Green: 5
  • Blue: 6
  • Violet: 7
  • Grey: 8
  • White: 9

Στο resistor-color trio αποκωδικοποιούσες τα τρία πρώτα χρώματα. Για παράδειγμα: το orange-orange-brown αντιστοιχεί στην κύρια τιμή 330. Σε αυτή την άσκηση θα χρειαστεί να προσθέσεις και την ανοχή στο μείγμα. Η ανοχή είναι η μέγιστη απόκλιση κατά την οποία μια τιμή μπορεί να βρίσκεται πάνω ή κάτω από την κύρια τιμή. Για παράδειγμα, αν η τελευταία ζώνη είναι green, η μέγιστη ανοχή θα είναι ±0.5%.

Η ζώνη ανοχής θα έχει μία από τις παρακάτω τιμές:

  • Grey - 0.05%
  • Violet - 0.1%
  • Blue - 0.25%
  • Green - 0.5%
  • Brown - 1%
  • Red - 2%
  • Gold - 5%
  • Silver - 10%

Η αντίσταση τεσσάρων ζωνών δομείται ως εξής:

Ζώνη_1 Ζώνη_2 Ζώνη_3 Ζώνη_4
Τιμή_1 Τιμή_2 Πολλαπλασιαστής Ανοχή

Δηλαδή:

  • το orange-orange-brown-green θα ήταν 330 ωμ με ανοχή ±0.5%.
  • το orange-orange-red-grey θα ήταν 3300 ωμ με ανοχή ±0.05%.

Η διαφορά ανάμεσα σε μια αντίσταση τεσσάρων και σε μια αντίσταση πέντε ζωνών είναι ότι η αντίσταση πέντε ζωνών έχει μια επιπλέον ζώνη που δηλώνει μια πιο ακριβή τιμή.

Ζώνη_1 Ζώνη_2 Ζώνη_3 Ζώνη_4 Ζώνη_5
Τιμή_1 Τιμή_2 Τιμή_3 Πολλαπλασιαστής Ανοχή

Δηλαδή:

  • το orange-orange-orange-black-green θα ήταν 333 ωμ με ανοχή ±0.5%.
  • το orange-red-orange-blue-violet θα ήταν 323M ωμ με ανοχή ±0.10.

Υπάρχουν επίσης αντιστάσεις με μία ζώνη. Οι αντιστάσεις με μία ζώνη έχουν μόνο το χρώμα black, με τιμή 0.

Αυτή η άσκηση αφορά τη μετατροπή των χρωμάτων των ζωνών της αντίστασης σε μια ετικέτα:

"... ohms ...%"

Έτσι, με είσοδο "orange", "orange", "black", "green" θα πρέπει να επιστρέφεται:

"33 ohms ±0.5%"

Όταν έχουμε πάνω από χίλια ωμ, λέμε "kiloohms". Είναι σαν να λέμε "χιλιόμετρο" για 1000 μέτρα και "χιλιόγραμμο" για 1000 γραμμάρια.

Έτσι, με είσοδο "orange", "orange", "orange", "grey" θα πρέπει να επιστρέφεται:

"33 kiloohms ±0.05%"

Όταν έχουμε πάνω από ένα εκατομμύριο ωμ, λέμε "megaohms".

Έτσι, με είσοδο "orange", "orange", "blue", "red" θα πρέπει να επιστρέφεται:

"33 megaohms ±2%"

Επεξεργασία μέσω GitHub Ο σύνδεσμος ανοίγει σε νέο παράθυρο ή καρτέλα
GDScript Exercism

Έτοιμος να ξεκινήσεις την άσκηση Ειδικός στα χρώματα αντιστάσεων;

Γράψου στο Exercism για να μάθεις και να κατακτήσεις GDScript με 45 ασκήσεις και πραγματική καθοδήγηση από ανθρώπους, όλα δωρεάν.