Stetigkeit von stückweise definierten Funktionen?

Hallo liebe Mathelounge-Mitglieder,


ich sitze gerade an einer Aufgabe und komme leider absolut mal wieder nicht weiter.


Es fängt schon damit an, dass mir der Rechenweg nicht ersichtlich ist.


Wie müsste ich an diese Aufgabe herangehen, um c sowie d zu finden?


Lieben Dank schon mal im Voraus!
  




  




  



![Bild Mathematik](https://www.mathelounge.de/?qa=blob&qa_blobid=11429907025475675493)
a) Setze bei der ersten und letzten der drei Zeilen der Definition x=2 ein und kontrolliere, ob dasselbe rauskommt. In diesem Fall gibt es ein solches c. 


ln(1) + 4 - 3 = 1


sin(π/2) = 1


Also kann man c=1 nehmen. 


b) Gibt es lim\_(x->0) sin(1/x) ? Falls dieser Grenzwert existiert, gibt es ein d , sonst nicht.
Klicken Sie sich einfach mal hier durch und zählen Sie mit (einfach in die Grafik klicken; dazu muss aber auch gesagt werden, dass die Anzahl der Schritte von der Anwendungsreihenfolge der beiden möglichen Vereinfachungsregeln abhängt, wir haben in der Klausur deshalb damals auch 14 als richtige Lösung gelten lassen):  

  

@[ID-22789]@ Hallo Tekto,

ich habe Dir das für die Komponente \(m\_1\) mal gerechnet.

$$\begin{aligned} m\_1 &= (M \cdot r\_1) \frac{1}{|r\_1|} \\ &= \left( \begin{pmatrix}  3 \\ 2 \\ 2 \end{pmatrix}^T \cdot \begin{pmatrix}  -1 \\ 1 \\ 2 \end{pmatrix} \right) \frac{1}{\sqrt{(-1)^2 + 1^2 + 2^2}} \text{Nm} \\ &= (3\cdot (-1) + 2 \cdot 1 + 2 \cdot 2 ) \frac{1}{\sqrt{6}} \text{Nm}\\ &= \frac{3}{\sqrt{6}}\text{Nm} = \frac12 \sqrt{6}\, \text{Nm}\end{aligned}$$

Wenn Du noch die berechnete Komponente mit dem Einheitsvektor in der jeweiligen Richtung von \(r\_i\) multiplizierst, kommst Du zu dem Anteil des Moments in der jeweiligen Richtung. In Geoknecht3D sähe das so aus:

[![Untitled1.png](https://www.mathelounge.de/?qa=blob&qa_blobid=7877675525675045088)](https://www.matheretter.de/geoservant/de/?draw=gerade(0%7C0%7C0%20-1%7C1%7C2)%7B00F%7D+gerade(0%7C0%7C0%201%7C2%7C1)%7B0F0%7D+vektor(3%7C2%7C2)%7BC00%7D+punkt(-0.5%7C0.5%7C1%20%22M1%22)+punkt(1.5%7C3%7C1.5%20%22M2%22)+strecke(3%7C2%7C2%20-0.5%7C0.5%7C1)%7B666%7D+strecke(3%7C2%7C2%201.5%7C3%7C1.5)%7B666%7D)
  


(klick auf das Bild und rotiere die Szene mit der Maus)


> mm, cm - Ja wurde so angegeben. Aber kann man doch gegebengalls ignorieren oder ?

Bei der Berechnung der Komponenten des Moment - ja, weil hier durch den Betrag geteilt wird, dann hebt sich das auf. <p>sie sollten versuchen, schleifen generell zu vermeiden. sie sind normalerweise weniger effizient als satzbasierte lösungen und weniger lesbar.</p><p>das folgende sollte ziemlich effizient sein.</p><p>dies gilt umso mehr, wenn die spalten name und weight im index <code>include-</code> d sein könnten, um die schlüsselsuche zu vermeiden.</p><p>es kann den eindeutigen index in der reihenfolge <code>turn</code> scannen und die laufende summe der spalte <code>weight</code> berechnen. verwenden sie dann <code>lead</code> mit denselben ordnungskriterien, um die laufende summe zu ermitteln die nächste reihe wird sein.</p><p>sobald die erste zeile gefunden wird, in der diese 1000 überschreitet oder <code>null</code> ist (was anzeigt, dass keine nächste zeile vorhanden ist), kann der scan gestoppt werden.</p><pre><code>with t1 as (select *, sum(weight) over (order by turn rows unbounded preceding) as cume\_weight from [dbo].[line]), t2 as (select lead(cume\_weight) over (order by turn) as next\_cume\_weight, * from t1) select top 1 name from t2 where next\_cume\_weight &gt; 1000 or next\_cume\_weight is null order by turn </code></pre><h1>ausführungsplan</h1><p> <a href="https://i.stack.imgur.com/gb1mw.png">(<img src="https://i.stack.imgur.com/gb1mw.png" alt="enter image description here"></a> </p><p>in der praxis scheint es ein paar zeilen vor dem unbedingt erforderlichen zu lesen - es sieht so aus, als würde jedes fenster-spool/stream-aggregat-paar zwei zusätzliche zeilen lesen.</p><p>für die beispieldaten in der frage müssten im idealfall nur zwei zeilen aus dem index-scan gelesen werden, in wirklichkeit werden jedoch 6 zeilen gelesen. dies ist jedoch kein wesentliches effizienzproblem und verschlechtert sich nicht, wenn der tabelle weitere zeilen hinzugefügt werden (wie in) <a href="https://dbfiddle.uk/?rdbms=sqlserver\_2017&amp;fiddle=892e6bb7c1af912413b01d05e606a98a">diese demo</a> )</p><p>für diejenigen, die an dieser ausgabe interessiert sind, wird unten ein bild mit den von jedem operator ausgegebenen zeilen (wie durch das erweiterte ereignis <code>query\_trace\_column\_values</code> gezeigt) angezeigt. die zeilen werden in der reihenfolge <code>row\_id</code> ausgegeben (beginnend mit <code>47</code> für die erste zeile, die vom index-scan gelesen wurde und bei <code>113</code> für <code>top</code> endet)</p><p>klicken sie auf das bild unten, um es zu vergrößern, oder sehen sie alternativ <a href="https://imgur.com/a/c7npqqh">die animierte version, um den ablauf einfacher zu verfolgen</a> .</p><p>anhalten der animation an dem punkt, an dem das rechte stream-aggregat seine erste zeile ausgegeben hat (für gary - turn = 1). es scheint offensichtlich, dass es darauf gewartet hat, seine erste zeile mit einem anderen windowcount zu erhalten (für jo - turn = 2). und die fensterspule gibt die erste "jo" -zeile erst frei, wenn sie die nächste zeile mit einem anderen <code>turn</code> gelesen hat (für thomas - turn = 3)</p><p>die fensterspule und das stream-aggregat bewirken also, dass eine zusätzliche zeile gelesen wird, und es gibt vier davon im plan - daher 4 zusätzliche zeilen.</p><p> <a href="https://i.stack.imgur.com/cwllc.jpg">(<img src="https://i.stack.imgur.com/cwllc.jpg" alt="enter image description here"></a> </p><p>es folgt eine erläuterung der oben gezeigten spalten (basierend auf info <a href="https://www.microsoft.com/en-us/p/microsoft-sql-server-2012-high-performance-t-sql-using-window-functions/fgqpf3h0qlch">hier</a> )</p><ul> <li><strong> knotenname: index-scan, knoten-id: 15, spaltenname: id </strong> basistabellenspalte, die vom index abgedeckt wird</li> <li><strong> knotenname: index-scan, knoten-id: 15, spaltenname: drehen sie die basistabellenspalte </strong>, die vom index abgedeckt wird</li> <li><strong> nodename: clustered index seek, nodeid: 17, columnname: gewicht </strong> basistabellenspalte, die aus der suche abgerufen wurde</li> <li><strong> nodename: clustered index seek, nodeid: 17, columnname: name </strong> basistabellenspalte, die aus der suche abgerufen wurde</li> <li><strong> nodename: segment, nodeid: 13, columnname: segment1010 </strong> gibt 1 am anfang einer neuen gruppe zurück oder andernfalls null. da kein <code>partition by</code> in <code>sum</code> vorhanden ist, erhält nur die erste zeile 1</li> <li><strong> nodename: sequenzprojekt, nodeid: 12, columnname: rownumber1009 </strong> <code>row\_number()</code> innerhalb der durch das segment1010-flag angegebenen gruppe. da sich alle zeilen in derselben gruppe befinden, werden ganze zahlen von 1 bis 6 aufgestiegen. wird in fällen wie <code>rows between 5 preceding and 2 following</code> zum filtern von zeilen mit rechten rahmen verwendet. (oder wie für <code>lead</code> später)</li> <li><strong> nodename: segment, nodeid: 11, columnname: segment1011 </strong> gibt 1 am anfang einer neuen gruppe zurück oder andernfalls null. da kein <code>partition by</code> in <code>sum</code> vorhanden ist, erhält nur die erste zeile 1 (wie segment1010).</li> <li><strong> nodename: window spool, nodeid: 10, columnname: windowcount1012 </strong> attribut, das zeilen gruppiert, die zu einem fensterrahmen gehören. diese fensterspule verwendet den fall "fast track" für <code>unbounded preceding</code>. wo es zwei zeilen pro quellzeile ausgibt. eins mit den kumulativen werten und eins mit den detailwerten. obwohl es keinen sichtbaren unterschied in den durch <code>query\_trace\_column\_values</code> offenbarten zeilen gibt, gehe ich davon aus, dass kumulative spalten in der realität vorhanden sind.</li> <li><strong> nodename: stream aggregate, nodeid: 9, columnname: expr1004 </strong> <code>count(*)</code> gruppiert nach windowcount1012 gemäß plan, aber tatsächlich eine laufende anzahl</li> <li><strong> nodename: stream aggregate, nodeid: 9, columnname: expr1005 </strong> <code>sum(weight)</code> gruppiert nach windowcount1012 gemäß plan, aber tatsächlich die laufende gewichtssumme (dh <code>cume\_weight</code>)</li> <li><strong> nodename: segment, nodeid: 7, columnname: expr1002 </strong> <code>case when [expr1004]=(0) then null else [expr1005] end</code> - sehen sie nicht, wie <code>count(*)</code> kann sei 0, also läuft immer die summe (<code>cume\_weight</code>)</li> <li><strong> knotenname: segment, knoten-id: 7, spaltenname: segment1013 </strong> nein <code>partition by</code> in <code>lead</code>, sodass die erste zeile 1 erhält. alle verbleibenden werden null</li> <li><strong> nodename: sequenzprojekt, nodeid: 6, columnname: rownumber1006 </strong> <code>row\_number()</code> innerhalb der durch das segment1013-flag angegebenen gruppe. da sich alle zeilen in derselben gruppe befinden, sind dies ganze zahlen von 1 bis 4</li> <li><strong> nodename: segment, nodeid: 4, columnname: bottomrownumber1008 </strong> rownumber1006 + 1, da <code>lead</code> die nächste zeile erfordert</li> <li><strong> nodename: segment, nodeid: 4, columnname: toprownumber1007 </strong> rownumber1006 + 1, da <code>lead</code> die nächste zeile erfordert</li> <li><strong> knotenname: segment, knoten-id: 4, spaltenname: segment1014 </strong> nein <code>partition by</code> in <code>lead</code>, sodass die erste zeile 1 erhält. alle verbleibenden werden null</li> <li><strong> nodename: window spool, nodeid: 3, columnname: windowcount1015 </strong> attribut, das zeilen, die zu einem fensterrahmen gehören, unter verwendung der vorherigen zeilennummern gruppiert. der fensterrahmen für <code>lead</code> hat maximal 2 zeilen (die aktuelle und die nächste)</li> <li><strong> nodename: stream aggregate, nodeid: 2, columnname: expr1003 </strong> <code>last\_value([expr1002])</code> für <code>lead(cume\_weight)</code></li> </ul> Hi,

Wir suchen Fel.

Diese ergibt sich zu

$$F\_{\text{el}} = \frac{m\cdot g}{l}\cdot d$$

 

m ist bekannt mit m = 0,5*10-3 kg.

g = 9,81 m/s^2

l = 1,5 m

d ist die Auslenkung: d = 0,05 m

 

Einsetzen und man erhält:

$$F\_{\text{el}} = 0,16\cdot10^{-3}\ \text{N}$$

 

Grüße <h2>es kommt darauf an ™</h2><p>die fähigkeit, einen oder mehrere cursor zu umgehen, hängt davon ab, was in diesem cursor ausgeführt wird. ohne zu wissen, was darin vor sich geht, gibt es keine möglichkeit zu sagen. es kann sein, dass es keine problemumgehung gibt und sie eine zeilenweise verarbeitung durchführen müssen.</p><p>nachfolgend einige beispiele.</p><h2>funktioniert nicht in sets</h2><p>dieses beispiel ist das grundlegendste und ist einfach die tatsache, dass sie ihr gesamtes dataset oder teile ihres datasets auf einmal abfragen können, aber der cursor wurde erstellt und fragt die daten zeilenweise ab. übliche, durch die dies ersetzt werden kann, sind <code>join</code>, <code>cross apply</code>/<code>outer apply</code> und andere.</p><p><strong> betrachten sie den folgenden datensatz: </strong></p><pre><code>create table dbo.lotr(lotrid int, charactername varchar(255), val varchar(255)); create table dbo.lotrattributes(lotrattributeid int, lotrid int, attrval varchar(255)); insert into dbo.lotr(lotrid,charactername,val) values(1,'frodo','ring') ,(2,'gandalf','staff'); insert into dbo.lotrattributes(lotrid,lotrattributeid,attrval) values(1,1,'ringattribute1') ,(1,2,'ringattribute2') ,(1,3,'ringattribute3') ,(2,4,'staffattribute1') ,(2,5,'staffattribute2'); </code></pre><p>man könnte versuchen, jeden datensatz zu finden, und er stimmt separat überein, indem man die tabelle <code>lotr</code> durchläuft.</p><p><strong> cursor: </strong></p><pre><code>declare @lotrid int declare c cursor for select lotrid from dbo.lotr; open c fetch next from c into @lotrid; while @@fetch\_status = 0 begin select lotrattributeid from dbo.lotrattributes where lotrid = @lotrid; fetch next from c into @lotrid; end close c deallocate c </code></pre><p><strong> das ergebnis sind zwei ergebnismengen </strong></p><pre><code>lotrattributeid 1 2 3 lotrattributeid 4 5 </code></pre><p><strong> wenn dieses <code>inner join</code> verwendet wird, erhalten wir das gleiche ergebnis wie eine ergebnismenge. </strong></p><pre><code>select lotrattributeid from dbo.lotr l inner join dbo.lotrattributes la on l.lotrid = la.lotrid; lotrattributeid 1 2 3 4 5 </code></pre><hr><h2>string-manipulation</h2><p>häufig wird <code>for xml path('')</code> verwendet, um zeichenfolgenmanipulationen innerhalb von cursorn zu ersetzen.</p><p><strong> datensatz </strong></p><pre><code>create table dbo.lotr(lotrid int, charactername varchar(255), val varchar(255)); create table dbo.lotrattributes(lotrattributeid int, lotrid int, attrval varchar(255)); insert into dbo.lotr(lotrid,charactername,val) values(1,'frodo','ring'); insert into dbo.lotrattributes(lotrid,lotrattributeid,attrval) values(1,1,'ringattribute1') ,(1,2,'ringattribute2') ,(1,3,'ringattribute3'); </code></pre><p><strong> doppelcursor mit string-manipulation </strong></p><pre><code>declare @lotrid int, @charactername varchar(255), @val varchar(255) declare @lotrattributeid int, @attrval varchar(255) declare c cursor for select lotrid,charactername, val from dbo.lotr open c fetch next from c into @lotrid,@charactername,@val while @@fetch\_status = 0 begin set @charactername +='|'+ @val declare d cursor for select lotrattributeid, attrval from dbo.lotrattributes where lotrid = @lotrid open d fetch next from d into @lotrattributeid,@attrval while @@fetch\_status = 0 begin set @charactername +='['+@attrval+ '],' fetch next from d into @lotrattributeid,@attrval end close d deallocate d fetch next from c into @lotrid,@charactername,@val end close c deallocate c select left(@charactername,len(@charactername)-1); </code></pre><p><strong> ergebnis </strong></p><pre><code>(no column name) frodo|ring[ringattribute1],[ringattribute2],[ringattribute3], </code></pre><p><strong> entfernen der cursor mit for xml path ('') </strong></p><pre><code>select l.charactername +'|'+ l.val + (select stuff((select ','+quotename(attrval) from dbo.lotrattributes la where la.lotrid = l.lotrid for xml path('')), 1, 1, '')) from dbo.lotr l; </code></pre><h2>* *</h2><p>die eigentliche problemumgehung besteht darin, herauszufinden, warum die daten auf diese weise dargestellt werden, und die anwendung zu ändern, um sie nicht in diesem format zu benötigen, und sie irgendwo zu speichern.</p><p>wenn ihre hände gebunden sind, wäre dies das nächstbeste.</p><hr><h2>fügen sie die top-10-werte in eine temporäre tabelle ein, basierend auf den ids in einer anderen tabelle</h2><p><strong> daten </strong></p><p>create table dbo.sometable (inserttableid int, val varchar (255)); create table dbo.top10table (top10tableid int, inserttableid int, val varchar (255));</p><pre><code>insert into dbo.sometable(inserttableid,val) values(1,'bla') ,(2,'blabla'); insert into dbo.top10table(top10tableid,inserttableid,val) values(1,1,'wuw') ,(2,1,'wuw') ,(3,1,'wuw'); </code></pre><p><strong> cursor </strong></p><pre><code>create table #top10values(top10tableid int, inserttableid int, val varchar(255)) declare @inserttableid int; declare c cursor for select inserttableid from dbo.sometable; open c fetch next from c into @inserttableid; while @@fetch\_status =0 begin insert into #top10values(top10tableid,inserttableid,val) select top(10) top10tableid,inserttableid,val from dbo.top10table where inserttableid = @inserttableid order by top10tableid fetch next from c into @inserttableid; end close c deallocate c select * from #top10values; drop table #top10values; </code></pre><p><strong> ergebnis </strong></p><pre><code>top10tableid inserttableid val 1 1 wuw 2 1 wuw 3 1 wuw </code></pre><p><strong> ersetzen des cursors durch <code>cross apply</code> und ein <code>cte</code> </strong></p><pre><code>create table #top10values(top10tableid int, inserttableid int, val varchar(255)); ;with cte as ( select inserttableid from dbo.sometable ) insert into #top10values(top10tableid,inserttableid,val) select t1t.top10tableid,t1t.inserttableid,t1t.val from cte cross apply (select top (10) top10tableid,inserttableid,val from dbo.top10table t1t where t1t.inserttableid = cte.inserttableid ) t1t ; select * from #top10values; drop table #top10values; </code></pre><hr><h2>andere beispiele</h2><ul> <li>ein beispiel zum ersetzen eines cursors zur auswahl eines dynamischen satzes von artikeln pro lieferant mithilfe von <code>cross apply</code> <a href="https://dba.stackexchange.com/questions/100761/replacing-a-cursor-with-a-single-query-possible">hier</a> .</li> <li>ein beispiel für die verwendung von fensterfunktionen zum ersetzen eines cursors <a href="https://dba.stackexchange.com/questions/127083/improve-a-query-using-cursor-to-set-based-approach">hier</a> .</li> </ul><hr><p><strong> manchmal gibt es keine andere wahl </strong></p><p>wenn sie nicht in sätzen arbeiten können und zeilenweise arbeiten müssen, können sie den cursor trotzdem optimieren.</p><p>eine der größten änderungen bei der beschleunigung des cursors ist das hinzufügen von <code>local fast\_forward</code>.</p><pre><code>declare c cursor local fast\_forward for select lotrid from dbo.lotr </code></pre><p>schauen sie sich <a href="https://sqlperformance.com/2012/09/t-sql-queries/cursor-options">diesen blogpost</a> von @aaronbertrand an, wo er die möglichen leistungsunterschiede erklärt, wenn cursoreinstellungen wie <code>local</code> &amp; <code>fast\_forward</code> verwenden oder nicht.</p> <p>hatte gerade genau das gleiche problem wie sie vor kurzem.</p><p>unser team (basierend auf den von ihnen genannten richtlinien und einigen beispielen für viele andere anwendungen) kam zu dem schluss, dass das menü alle funktionen ihrer anwendung und die symbolleiste nur eine teilmenge (die am häufigsten verwendeten funktionen) enthalten sollte.</p><p>wenn die symbolleiste einen anderen satz oder nur einen überlappenden satz von funktionen enthält, ist es für einen benutzer schwieriger, die dinge zu finden, da es keinen einzigen ort gibt, an dem der benutzer nach dem richtigen befehl suchen kann. und der benutzer könnte auch denken, dass sich die funktionalität an einem "noch anderen" ort befindet (zum beispiel in einem kontextmenü).</p><p>außerdem enthalten die gängigsten symbolleistenschaltflächen keinen text. nur ein symbol. um zu wissen, wofür die schaltflächen verwendet werden, muss der benutzer warten, bis der tooltip angezeigt wird (was den benutzer verlangsamen kann), oder einfach auf die schaltflächen in der symbolleiste klicken (dies kann jedoch "angst" haben) er weiß einfach nicht, was er bekommen wird). daher ist es möglicherweise besser, wenn die symbolleiste nicht der einzige ort ist, an dem auf einige funktionen zugegriffen werden kann.</p><p>ein weiterer grund, die symbolleiste nur als unterstützung für das menü zu sehen (schnellerer zugriff auf funktionen über das menü), ist die verwendung von symbolen. wenn der benutzer zum ersten mal nach funktionen sucht, kann er zuerst das menü (das die menüelemente gegebenenfalls mit einigen symbolen anzeigt) anzeigen, den ort, an dem er sicher das findet, wonach er sucht. wenn der benutzer das symbol der menüelemente sieht, kann er später schnell dieselben symbole in der symbolleiste erkennen und die symbolleiste dann direkt verwenden, wenn er das nächste mal dieselbe funktionalität benötigt. sie können sich auf das kapitel "erkennen ist einfach, erinnern ist schwer" aus dem buch "entwerfen mit dem gedanken" von jeff johnson beziehen.</p><p>daher würde ich vorschlagen, dass alles über das menü zugänglich ist und die am häufigsten verwendeten funktionen auch über die symbolleiste zugänglich sind (und natürlich die konsistenz der symbole und begriffe zwischen den menüelementen und den schaltflächen der symbolleiste sowie den quickinfos erhalten bleibt).</p> Hallo,
  
[PES 2012 - Tipps, Tricks, Taktiken, Aufstellung, Achievements - Tipps & Lösung](https://www.eurogamer.de/articles/2011-09-29-pes-2012-tipps-taktiken-aufstellung-achievements-tipps-and-losung).
  
MfG. [was versteht man unter einer begegnung der 1. und 2. art?](http://www.gutefrage.net/frage/was-versteht-man-unter-einer-begegnung-der-1-und-2-art)


da findest du deine Antwort vielleicht...


Lg Nivis (1) Sei \( X \) eine *nicht-leere* Menge.  

(2) Sei \( \mathcal{M} \subseteq \mathcal{P}(X) \) ein Mengensystem mit \( \emptyset \in \mathcal{M} \) als Teilmenge der Potenzmenge von \( X \).

Dann ist `\[ \varphi: \mathcal{M} \rightarrow \mathbb{C} \]` 
eine Mengenfunktion auf \( \mathcal{M} \). Je nach Notwendigkeit kann \( \mathbb{C} \) auf die erweiterte reelle Zahlen \( \bar{\mathbb{R}} \) oder auf positive reelle Zahlen \( \mathbb{R}\_+ \) eingeschränkt werden.

**Beispiel: Elemente-zählende Mengenfunktion**Sei das Mengensystem \( \mathcal{M} = \{ \emptyset,~ \{7\},~ \{42, 17, 0\} \} \). Dann kann die Mengenfunktion beispielsweise die Einträge der Elemente von \( \mathcal{M} \) zählen:`\[ \varphi(\emptyset) ~=~ 0, ~~~ \varphi(\{7\}) ~=~ 1, ~~~ \varphi(\{42,~ 17,~ 0\}) ~=~ 3 \]` [bild] peter642:

…beitrag nicht gefunden. nochmals danke …

bitte, sehr gerne.

ein tipp für die recheche:

bei youtube sucht man direkt und nicht via google.

mit „magix bildausschnitt“ war es gleich der erste treffer.

bei magix darf man sich nicht auf die versionsnummer versteifen.

das m…