C# windowsFromsApplication, hittar inte felet
Hejhej. håller på med en windowsFromsApplication har kommit en lite bit på den,
jag ska skriva in förnamn, efternamn och personnummer. i var sin textbox så ska den skriva ut resultat i en annan textbox, detta fungerarde innan jag gjorde den andra classen (person) och jag hittar inte felet. finns här någon snäll själ som kan titta på den och säga vad som är fel, hade varit super snällt, är trots allt en nybörjare än så länge på det här.
här är den första classen Form1
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication9
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
/*
private void button1_Click(object sender, EventArgs e)
{
string förNamn;
string efterNamn;
string personNummer;
string kön;
förNamn = textBox1.Text;
efterNamn = textBox2.Text;
personNummer = textBox3.Text;
textBox4.Text = förNamn + " " + efterNamn + " " + personNummer;
textBox5.Text = instPerson.KollaKön();
{
if (luhn(textBox3.Text))
textBox5.Text = "Man";
else
textBox5.Text = "Kvinna";
}
}
static bool luhn(string personNummer)
{
int sum = 0;
for (int i = 0; i < personNummer.Length; i++)
{
int temp = (personNummer[i] - '0') << (1 - (i & 1));
if (temp > 9) temp -= 9;
sum += temp;
}
return (sum % 10) == 0;
}
* */
private void button1_Click(object sender, EventArgs e)
{
Person p = new Person();
bool PnrOK;
string Kön;
p.Fornamn = Convert.ToString(textBox1.Text);
p.Efternamn = Convert.ToString(textBox2.Text);
p.Personnummer = Convert.ToString(textBox3.Text);
PnrOK = p.Personnummerkollare();
Kön = p.KollaKön();
}
/*
string siffraAsString = textBox3.Text.Substring(8, 1);
int siffraAsNum = int.Parse(siffraAsString);
int result = (siffraAsNum % 2);
if (instPerson.KollaPnr() == true)
if (result == 1)
{
textBox5.Text = "Är en Man";
}
else
{
textBox5.Text = " Är en Kvinna";
}
}
*/
private void Form1_Load(object sender, EventArgs e)
{
}
}
}
Här är min egna class Person
sing System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WindowsFormsApplication9
{
class Person
{
private String fornamn;
private String personnummer;
private String efternamn;
private int sifferSumma;
public String Fornamn
{
get { return fornamn; }
set { fornamn = value; }
}
public String Efternamn
{
get { return efternamn; }
set { efternamn = value; }
}
public String Personnummer
{
get { return personnummer; }
set { personnummer = value; }
}
public bool Personnummerkollare()
{
int sum = 0;
for (int i = 0; i < Personnummer.Length; i++)
{
int temp = (Personnummer[i] - '0') << (1 - (i & 1));
if (temp > 9) temp -= 9;
sum += temp;
}
return (sum % 10) == 0;
}
public string KollaKön()
{
int Könsiffra;
int a;
string kön;
Könsiffra = Convert.ToInt32(new string(personnummer[8], 1));
//Alternativt Könsiffra = personnummer[8] - '0';
if ((Könsiffra % 2) == 0)
{
kön = "Kvinna";
}
else
{
kön = "Man";
}
return kön;
}
}
}