webForumDet fria alternativet

Behöver hjälp

.NET

12 svar · 704 visningar · startad av magnuzzz

Medlem sedan mars 20075 inlägg
Frågan#1

Har ett antal uppgifter i Visual Basic som ska utföras i sharp Develop, jag tycker det är jättesvårt och undrar om någon kan vara snäll och göra uppgifterna åt mig.
Jag mailer dem på pdf i så fall.

Medlem sedan dec. 19996 721 inlägg
#2

Så ruttet. Skit i uppgifterna och ta konsekvenserna av att du inte fixar dem! Jag tror inte att någon här har så dåligt omdöme att de hjälper dig på det sättet, men rätt ställe att fråga skulle då vara Jobb & Tjänster (mot betalning)

Försök att lösa uppgifterna, och när du får problem så frågar du i .NET-forumet.

Medlem sedan mars 20075 inlägg
#3

Behöver hjälp 2

OK, Jag erkännner det var lågt av mig att be nån bara göra uppgifterna.
Men jag tycker uppgifterna är väldigt svåra, och skulle behöva en hel del hjälp.
Så jag om någon skulle kunna tänka sig att ta en titt på mina uppgifter och, inte göra dem åt mig, men förklara hur jag ska göra. Mailar dem på PDF I Såfall.

Medlem sedan juni 200032 967 inlägg
#4

Ok, vi gör så här:

  1. Trådarna sammanslagna, och:
  2. Resulterande tråd flyttas från Visual Basic.
Medlem sedan dec. 2005664 inlägg
#5

Kan du inte pressentera uppgifterna här i tråden, antagligen det enklaste sättet för att få folk att hjälpa dig på traven i varje fall. Eller du orkar inte?

Medlem sedan dec. 20014 239 inlägg
#6

Men hallå... Luktar som skoluppgifter... Försöker man inte lär man sig inte.
Så börja med att försöka lösa uppgifterna och stöter du på problem kan säkert någon peka dig i rätt riktning.

Att kapa hörn på detta sätt kommer inte att fungera i längden för dig. Det är bara ett vänligt råd och inget påhopp.

Medlem sedan mars 20075 inlägg
#7

Men jag trodde ju att det skulle bli bli lättare för er att fatta vad uppgifterna handlade om om ni fick läsa dem på PDF.
AJA, Kan presentera uppgifterna här.
Egendefinierad subrutin
Funktioner och subrutiner kallas tillsammans för procedurer. Det går att skapa egna
procedurer som man kan anropa när man ska göra någon uppgift som man utför ofta. Vi
ska nu skapa en egen subrutin.
När man skapar sin subrutin kallas det för att man definierar den. Definitioner av subrutiner
skrivs på följande sätt:
Syntax:
Sub <subrutinsnamn>([<parametrar>])
<satser>
End Sub
Parametrarna består av en kommaseparerad lista på de parametrar man vill att subrutinen
ska ta emot (om några). Varje element i listan består av namnet på parametern, nyckelordet
As och parameterns typ: (<parameternamn> As <parametertyp>, ...)
Här följer ett enkelt exempel där en subrutin anropas någonstans i ett kodstycke. Med
anropet skickas ett namn. Subrutinen skickar upp en MsgBox där det står ”Hej” följt av
namnet som skickades med.
Exempel:
Sub VisaNamn(namn As String)
MsgBox(”Hej ” & namn)
End Sub
Anropet kan se som nedan:
VisaNamn(”Svarte Petter”)
Gör en subrutin med namnet Skriv() som tar en sträng som argument och sedan
skriver ut strängen till utmatningsrutan (utan att radera texten som redan finns där) med
en åtföljande radmatning. När man anropar funktionen kan det se ut så här:
Skriv(”Det här texten skrivs på övre raden”)
Skriv(”Det här är raden under”)
Övningar – Objektorieneterad Programmering i Visual Basic .NET
28
Övning 4b – Subrutiner
Skriv ett program där användaren kan fylla i text i inmatningsrutorna. När användaren
klickar på Utför 1 skall texten kopieras från textrutorna till utmatningsrutan och sedan
skall textrutorna tömmas. Dela upp koden i två subrutiner, en som heter CopyText()
och en som heter Clear(). Den första skall kopiera texten mellan in- och utmatningsrutorna
och den andra skall rensa inmatningsrutorna. Båda rutinerna skall anropas när man
klickar på Utför 1.
Egendefinierad funktion
En funktion fungerar precis som subrutiner men har även ett returvärde. Returvärdet
skickas tillbaka från funktionen med instruktionen Return (som också avbryter funktionsexekveringen).
Definitioner av funktioner skrivs på följande sätt:
Syntax:
Function <funktionsnamn>([<parametrar>]) As <returtyp>
<satser>
Return <returvärde>
End Sub
Här följer ett enkelt exempel på en funktion som konverterar från grader till gon.
Exempel:
Function GraderTillGon(degree As double) As double
Return degree * 100 / 90
End Function
Anropet kan se ut som nedan:
dblSvar = GraderTillGon(76.5)
Skriv en funktion InRange() som tar tre integer:s som parametrar: value, lower och
upper och testar om value ligger inom intervallet lower till upper. Om så är fallet returnerar
funktionen true, annars false. I InRange() skall en felkorrigering finnas som
byter plats på lower och upper om lower är större än upper.
Exempel:
boolErr = InRange(10, 0, 20) ’ returnerar sant
boolErr = InRange(0, 0, 20) ’ returnerar sant
boolErr = InRange(0, 1, 20) ’ returnerar falskt
boolErr = InRange(10, -10, 0) ’ returnerar falskt
Läs in value, lower och upper från inmatningsrutorna och skriv ut en passande text i
utmatningsrutan (gärna med hjälp av Skriv() från den tidigare övningen) när man
trycker ner Utför 1. Utför 2 rensar utmatningsrutan.
Lägg in felkontroller för alla de inmatade värderna (så att de är numeriska)

Lokala variabler
Variabler som är deklarerade i en subrutin eller inne i ett nästlat block gäller bara i den
subrutinen eller i det blocket (lokala variabler). Vill man använda samma variabel i flera
olika subrutiner måste den deklareras direkt i klassdefinitionen (global variabel).
Public Partial Class MainForm
Dim intCounter As Integer

Följande kod (inlagd i övningsmallen) ska läsa in text från Inmatningsruta 1 och sedan
rensa rutan när knappen Utför 1 trycks ner. När så Utför 2 trycks ner ska den tidigare inmatade
texten skrivas ut i utmatningsfönstret.
Sub DoButton1Click(sender As Object, e As System.EventArgs)
Dim strTextIn As String
strTextIn = input1.Text
input1.Clear
End Sub
Sub DoButton2Click(sender As Object, e As System.EventArgs)
Dim strTextIn As String
output.AppendText(strTextIn)
End Sub
Problemet är bara att programmet inte fungerar. Det genererar till och med en exception
då det körs.
Fixa programmet så att det fungerar så
som avsett.

Övning 4e – Static-deklarerade variabler
Då en subrutin (eller funktion) anropas (t ex efter en knapptryckning) nyskapas alla i
subrutinen deklarerade variabler, och de försvinner då subrutinen avslutas. För att förhindra
att en variabel nyskapas och försvinner mellan anropen kan den deklareras som
static (i stället för dim):
Static intCounter As Integer
Gör ett program som skriver ut det antal
gånger man har tryckt ner Utför 1-knappen.
Du får inte använda några globalt deklarerade variabler!

Medlem sedan mars 20075 inlägg
#8

Övning 5b – Vektorer
Skriv ett program där användaren får skriva in två tal vars produkt skall presenteras.
Produkten skall inte räknas fram utan slås upp i en matris där alla produkter från och
med 1*1 till och med 10*10 finns med. Matrisen ska vara global och skapas när programmet
startar (MainFormLoad). En matris är en vektor med 2 dimensioner. Man kan
med hjälp av två index komma åt alla platser i matrisen.
Man kan tänka på följande matris
Dim matris(,) As Integer = new Integer(,) {{1,2,3}, {4,5,6}, {7,8,9}}
såhär:
1 2 3
4 5 6
7 8 9
Man kommer åt siffrorna genom att ange först rad och sedan kolumn (både rad och
kolumn börjar på 0). (0,1) är plats 2, (2,2) plats 9, (1,2) plats 6 osv.
Övning 5c – Vektorer (ReDim, Preserve)
Skriv ett program där användaren kan skriva in text i Inmatningsruta 1 och lägga till
den i en vektor när man klickar på utför i knappen. För varje gång man trycker på knappen
ska vektorns storlek ökas med 1 och sedan skall den nya texten läggas till på den sist
skapade platsen. Vektorn skall behålla sina gamla värden.
När man klickar på Utför 2-knappen skall vektorn tömmas.
Utmatningsrutan skall hela tiden visa vektorns innehåll.

Medlem sedan maj 20012 812 inlägg
#9

Hoppas du inte menar på fullt allvar att man skall orka läsa igenom det där??

Ett tips är att använda dig av stycken, fetstil, code-tagar osv osv för att öka läsbarheten...

- M

Medlem sedan sep. 2006867 inlägg
#10

Men dom här uppgifterna är ju så enkla att om man visar dig lite så har man gjort hela rasket.

Första övningen handlar alltså om att skapa en subrutin Skriv() som tar en sträng som argument och som sedan skriver ut den i console. Och att du ska komma ihåg att avsluta med en newline.

Klarar du inte det får du beskriva vari ditt problem ligger. Jag utgår från att du kan skapa ett nytt projekt och att du kan köra dina program?!

Medlem sedan mars 20075 inlägg
#11

Tror knappast jag skulle uppfatta uppgifterna som gjorde bara för att du visade lite mer, du får komma ihåg att jag är typ världens sämsta på sharp develop.
på 4a skrev jag Sub VisaNamn(namn As String)
MsgBox(”Hej ” & namn)
End Sub
Får felmedelandet ")" expected
Vad har jag gjort för fel? att skriva till en parantes funkar inte.
Vilket skitprogram.

Medlem sedan juli 200012 978 inlägg
#12

Detta är ju grundläggande programeringsexempel som följer med varje programspråk.
Jag tror att det inte är svårt för någon att utföra detta om man bara vill läsa in lite av manualer som följer med programmen för C#.
Varför skall någon annan göra detta? Det finns väl en anledning till uppgiften!

Medlem sedan sep. 2006867 inlägg
#13

magnuzzz skrev:

Tror knappast jag skulle uppfatta uppgifterna som gjorde bara för att du visade lite mer, du får komma ihåg att jag är typ världens sämsta på sharp develop.
på 4a skrev jag Sub VisaNamn(namn As String)
MsgBox(”Hej ” & namn)
End Sub
Får felmedelandet ")" expected
Vad har jag gjort för fel? att skriva till en parantes funkar inte.
Vilket skitprogram.

Jaha, men din kod består väl av mer än dessa tre rader, antar jag. Har du skapat en applikation där du testkör koden eller vad håller du på med?

Den här uppgiften

magnuzzz skrev:

Gör en subrutin med namnet Skriv() som tar en sträng som argument och sedan
skriver ut strängen till utmatningsrutan

Ska ju inte skicka till en MsgBox, varför har du kodat en sådan, du måste läsa uppgiften ordentligt så att du vet vad du ska göra innan du sätter igång.

Du ska använda dig av utmatningsrutan, dvs en Command Console, cmd i WinXP.

Här är ett exempelprogram med en Sub, funkar hur bra som helst

Module Module1

    Sub Main()
        Skriv("Hej hopp!")
    End Sub

    Sub Skriv(ByVal input As String)
        Console.WriteLine(input)
    End Sub

End Module

Och därmed var uppgiften löst. Jag hoppas det går bättre med resten av uppgifterna!

268 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
137 ms — hämta tråd, inlägg och bilagor (db)
128 ms — ändringar (db)