Ohm'sche Gesetze (Anweisungen und Abfolgen)
Berechnen Sie elektrische Widerstände für a) Serienschaltung und b)
Parallelschaltung von zwei gegebenen Widerständen R_1 und R2:
a) R = R_1 + R_2
b) R = {1\over{{1\over{R_1}} + {1\over{R_2}}}}
Schreiben Sie dazu ein Programm, das R_1 und R_2 entgegennimmt und obige Resultate ausgibt.
1 Kommentare
11 Lösung(en)
import java.util.Scanner;
public class OhmscheGesetze {
public static void main(String[] args) {
new OhmscheGesetze().top();
}
void top() {
double r1, r2;
r1 = lesen("R1");
r2 = lesen("R2");
double serie = r1 + r2;
double parallel = 1/(1/r1 + 1/r2);
ausgabe("Serie: " + serie);
ausgabe("Parallel: " + parallel);
}
void ausgabe(String meldung) {
System.out.println(meldung);
}
Scanner sc = new Scanner(System.in);
double lesen (String frage) {
System.out.println(frage + ":");
return sc.nextDouble();
}
} // end of class OhmscheGesetze
// Eingabe:
var r1, r2;
r1 = window.prompt("Erster Widerstand" );
r1 = 1.0 * r1;
r2 = window.prompt("Zweiter Widerstand");
r2 = 1.0 * r2;
// Verarbeitung:
var rgesamt;
rgesamt = (r1 * r2) / (r1 + r2);
// Ausgabe:
window.alert("Der Gesamtwiderstand beträgt " + rgesamt + " Ohm.");
Lösung von: Philipp G. Freimann (BBW (Berufsbildungsschule Winterthur) https://www.bbw.ch)
ohmsche:
procedure options(main);
dcl r1 float;
dcl r2 float;
dcl serie float;
dcl parallel float;
put skip list ("Bitte r1 eingeben: ");
get (r1);
put skip list ("Bitte r2 eingeben: ");
get (r2);
serie = r1 + r2;
parallel = (r1 * r2) / (r1 + r2);
put skip list("Serieschaltung : ", serie );
put skip list("Parallelschaltung: ", parallel);
end ohmsche;
Lösung von: Philipp G. Freimann (BBW (Berufsbildungsschule Winterthur) https://www.bbw.ch)
print('Eingabe Widerstand R1')
r1=float(input())
print('Eingabe Widerstand R2')
r2=float(input())
r3=r1+r2
print('Serienschaltung R =', r3)
r4 = (r1 * r2) / (r1 + r2)
print('Parallelschaltung R =', r4)
Lösung von: Name nicht veröffentlicht
#include <stdio.h>
main()
{
double r1;
double r2;
double serien;
double parallel;
printf("Erster Widerstand R1: ");
scanf("%lf", &r1);
fflush(stdin);
printf("Zweiter Widerstand R2: ");
scanf("%lf", &r2);
serien = r1 + r2;
parallel = 1 / ((1 / r1) + (1 / r2));
printf("Serienschaltung: %f\n", serien);
printf("Parallelschaltung: %f\n", parallel);
}
Lösung von: Tobias Widner (SANTIS TRAINING AG / CS)
program Widerstand (input, output);
var
Rs, Rp, R1, R2: real;
begin
writeln ('Gib Widerstand R1 ein');
readln (R1);
writeln ('Gib Widerstand R2 ein');
readln (R2);
Rs := R1 + R2;
Rp := 1/(1/R1 + 1/R2);
writeln ('Der Widerstand beträgt in der Serienschaltung ' , Rs:0:2, ' Ohm.');
writeln ('Der Widerstand beträgt in der Parallelschaltung ' , Rp:0:2, ' Ohm.');
end.
Lösung von: Timo Krull ()
/**
* Aufgabe 2.4 Ohmsche Gesetze - Anweisungen
* Version ohne Erfahrung aus Kapitel 5 Unterprogramme
*
* Datum: 20.12.2019
* @author Daniele Curcio
*
* Anmerkungen
* -----------
* 1 Variablen des gleichen Types können in einer Reiher aufgelistet werden
* 2 es gilt die Punkt vor Strich Regel
* 3 die Variable Ergebnis kann verändert werden da sie ihren ersten Zweck erfüllt hat
* 4 wird ein Scanner in einer Methode definiert (instanziert), muss er in derselben Methode geschlossen werden
**/
package ch.santis.kapitel2;
import java.util.Scanner;
public class Aufgabe_2_4_Ohmsche_Gesetz {
public static void main(String[] args) {
new Aufgabe_2_4_Ohmsche_Gesetz().top();
}
void top() {
double ersterWiderstand, zweiterWiderstand, ergebnis; // Anmerkung 1
Scanner sc = new Scanner(System.in);
System.out.println("Geben sie den Wert des ersten Widerstandes ein.");
ersterWiderstand = sc.nextInt();
System.out.println("Geben sie den Wert des zweiten Widerstandes ein.");
zweiterWiderstand = sc.nextInt();
ergebnis = ersterWiderstand + zweiterWiderstand;
System.out.println("Der Wert für in Serie geschaltene Widerstände ist " + ergebnis + " Ohm");
ergebnis = 1 / (1 / ersterWiderstand + 1 / zweiterWiderstand); // Anmerkung 2 + 3
System.out.println("Der Wert für parallel geschaltene Widerstände ist " + ergebnis + " Ohm");
sc.close(); // Anmerkung 4
}
}
Lösung von: Daniele Curcio ()
r1 = float(input("Widerstand R1 [Ohm] bitte: "))
r2 = float(input("Widerstand R2 [Ohm] bitte: "))
def serienschaltung(r1, r2):
return r1 + r2
def parallelschaltung(r1, r2):
return (r1 * r2) / (r1 + r2)
print("In Serie geschaltet, R =", serienschaltung(r1, r2), "Ohm")
print("Parallel geschaltet, R =", round(parallelschaltung(r1, r2), 2), "Ohm")
Lösung von: Peter Pan (Home Office)
/* erwartet als driten parameter die schaltung
seriell (true) oder parallel (false).
gibt beide werte als array zurück, wenn dieser
nicht angegeben wurde */
function electResistance(r1, r2, serial) {
let out = [r1 + r2, (r1 * r2) / (r1 + r2)];
if (typeof serial == 'undefined') return out;
if (serial) return out[0];
return out[1];
}
console.log(electResistance(3, 5, true));
console.log(electResistance(3, 5, false));
console.log(electResistance(3, 5)); // lissalanda@gmx.at
Lösung von: Lisa Salander (Heidi-Klum-Gymnasium Bottrop)
// C++ 20 | VS-2022
#include <iostream>
int main() {
const auto serial{ [] <typename ...T>(const T & ...param) { return (param + ...); } };
const auto parallel{ [] <typename ...T>(const T & ...param) { return 1.0 / ((1.0 / param) + ...); } };
std::cout << "Parallel: " << parallel(10, 25, 13, 17) << "\n";
std::cout << "Seriell: " << serial(10, 25, 13) << "\n";
}
Lösung von: Jens Kelm (@JKooP)
// C++23 | VS-2022
#include <iostream>
int main() {
constexpr auto serial{ [] (auto&& ...param) { return (param + ...); } };
constexpr auto parallel{ [] (auto&& ...param) { return 1.0 / ((1.0 / param) + ...); } };
std::cout << "Parallel: " << parallel(10, 25, 13, 17) << "\n";
std::cout << "Seriell: " << serial(10, 25, 13) << "\n";
}
Lösung von: Jens Kelm (@JKooP)
Verifikation/Checksumme:
R1 = 40 Ohm und R2 = 50 Ohm
- 90 Ohm
- 22.22... Ohm
Aktionen
Neue Lösung hinzufügen
Bewertung
Durchschnittliche Bewertung:
Meta
Zeit: | 0.5 |
Schwierigkeit: | k.A. |
Webcode: | po9n-fjn6 |
Autor: | Philipp G. Freimann (BBW (Berufsbildungsschule Winterthur) https://www.bbw.ch) |
Kommentare (1)