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

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

Εύκολο

Εισαγωγή

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

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

Οδηγίες

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

  • 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 ohms με ανοχή ±0.5%.
  • το orange-orange-red-grey θα ήταν 3300 ohms με ανοχή ±0.05%.

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

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

Που σημαίνει:

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

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

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

"... ohms ...%"

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

"33 ohms ±0.5%"

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

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

"33 kiloohms ±0.05%"

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

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

"33 megaohms ±2%"

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

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

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