[C#] Primitive Data Types and Variables - 14 задача


4
A bank account has a holder name (first name, middle name and last name), available amount of money (balance), bank name, IBAN, BIC code and 3 credit card numbers associated with the account. Declare the variables needed to keep the information for a single bank account using the appropriate data types and descriptive names.
 
Интересува ме на трите кредитни карти какво трябва да им присвоя? До момента съм направил това:
 
string firstName = "Ivan";
string middleName = "Petrov";
string lastName = "Draganov";
string fullName = firstName + " " + middleName + " " + lastName;
decimal moneyBalance = 9034,50M; 
string bankName = "UniCredit";
string IBAN = "BG38 UNIC 9661 3100 1827 01";
string BIC = "UNCRBGSF";

 

EDIT:  № задача + задача




Отговори



0

Аз искам да питам някой знае ли как може да се encrypt-не информацията за номерата на кредитните карти в тази задача - тоест част от цифричките да се визуализират на конзолата например като ХХХХ? Стигнах до namespace-a System.Security.Cryptography , но нещо не ми е ясно как да го приложа?


от borisova (70 точки)


0
Здравей ! :)
И аз по подобен начин съм решил задачата.
Ето и примерния код.
http://project10telerik.cloudvps.bg/?p=108
Можеш да добавиш някакви проверки за валидност на кредитните карти ( в Google има много примери ), но мисля, че тук не се изискват такива, т.е. данните ти са както трябва.
Поздрави ! :)

от bigerbite (33 точки)


0

using System;

class BankAccount

{

static void Main()

{

string FirstName;

string MiddleName;

string LastName;

decimal Balance;

string BankName;

object IBAN;

string BIC;

string CreditCard1;

string CreditCard2;

string CreditCard3;

}

}


от nvicheva (5 точки)


1
Това е моето решение: http://pastebin.com/a2kBhTk2

от dani.georgieva (3072 точки)


0
Ето още едно решение от мен :)
http://pastebin.com/f8UD3TLG

от kalinnikol (5 точки)


0
Привет, колеги!
Мислех да пусна отделна тема, т.к. моя въпрос малко се различава от коментирания тук, но ме close-наха, понеже не видях, че името на темата е същото ( сори на системните ).
Ето и моя въпрос: реших да усложня условието на 14-та задача, но се забатачих. Моля за помощ, ако някой има идея, как да го подкарам.
Искам да се даде право на избор за две нови действия, които да доведат до следващ въпрос и там да се приключи. Вижте, за какво става въпрос:
using System; using System.Data;
class bankAccount { static void Main() { Console.WriteLine(new string('-', 21)); Console.WriteLine("Personal Information:"); Console.WriteLine(new string('-', 21)); string firstName, middleName, lastName, bankName, bic, moneyBalance, IBAN, creditcard1, creditcard2, creditcard3; firstName = "Ivan"; middleName = "Ivanov"; lastName = "Ivanov"; moneyBalance = "XXX BGN"; bankName = "UBB"; IBAN = "BGXX XXXX XXXX XXXX XXXX XX"; bic = "BG UBB XX"; creditcard1 = "XXXXXXXXXXXXXXXXXXX"; creditcard2 = "XXXXXXXXXXXXXXXXXXX"; creditcard3 = "XXXXXXXXXXXXXXXXXXX"; Console.WriteLine("First name: {0}\nMiddle name: {1}\nLast name: {2}\nYour balance: {3}\nYour bank: {4}\nIBAN: {5}\nBIC: {6}\nCredit card 1: {7}\nCredit card 2: {8}\nCredit card 3: {9}", firstName, middleName, lastName, moneyBalance, bankName, IBAN, bic, creditcard1, creditcard2, creditcard3); //Console.WriteLine("What would you like to do:"); //Console.WriteLine("Whitdraw \nPay bills"); //{ // Console.WriteLine("Withdraw"); // bool withdraw = bool.Parse(Console.ReadLine()); // Console.WriteLine("Pay bills"); // bool payBills = bool.Parse(Console.ReadLine()); // if (withdraw) // { // Console.WriteLine("How much would you like to withdraw"); // } // else // { // string electricity, gas, fees; // electricity = "Choose a credit card"; // gas = "Choose a credit card"; // fees = "Choose a credit card"; // Console.WriteLine("What would you like to pay: \n{0} \n{1} \n{2}", electricity, gas, fees); // } //} Ще се радвам, ако някой има идея, как да стане, да помогне, че се вкарах в приключение :)
} }

от remote87 (52 точки)


0
Мисля че може да го направиш с един switch, като попиташ какво искаш да направиш, например ако избереш 1 да е Withdraw, ако е 2 да е Pay bills

от Yordan.Bonev (780 точки)

0
Ако може малко по-подробно, т.к. продължавам да се мъча като грешен дявол и не става :(

от remote87 (52 точки)



1

Здравейте,

Скалъпих една играчка с тази задача, но ми изникнаха няколко малки въпроса.

Кодът е тук, но търся по-добри начини за следните неща:

1) Capitalise-ването на думи - една, или всяка отделна в стринг с повече от една дума. Видях методи само за правенето на целия стринг в големи букви или малки.
2) Генериране на случайни числа, букви, поредица от букви
3) Подравняване и подредба на текста с табулация

Ако някой има идеи, бих бил благодарен :)

Поздрави,
Георги

 


от georgiwe (720 точки)


0
То това са някой от нещата които може да се добавят: \' for a single quote \" for a double quote \\ for a backslash \0 for a null character \a for an alert character \b for a backspace \f for a form feed \n for a new line \r for a carriage return \t for a horizontal tab \v for a vertical tab
Относно генерирането на случайни числа, с рандом си е окей, но мисля че не би било лошо да го направил в един цикъл, което ще ти спести писането на едно и също нещо хиляди пъти, като може да пълниш резултат в един StringBuilder и след това да го печаташ, където пожелаеш, и примерно си правиш един масив с символите, от които искаш да генерираш съответното нещо, и му пускаш един рандом върху него, например ако си кръстиш масива letters, става така letters[random.Next(letters.Length)]

от Yordan.Bonev (780 точки)

0
Здравей, въпросът ти е интересен, но ще изисква знания малко по-напред в материала, ще се опитам да ти отговоря но ако се затрудняваш коментирай по какво и ще допълня: 1. Относно capitalize на отделни думи, виж по-надолу в ето този линк: (http://stackoverflow.com/questions/4315564/c-sharp-capitalizing-words-in-a-string) където показват simple way чрез Split метода във един цикъл, можеш да погледнеш и създаване на главна буква на всяка дума във стринга чрез метода ToTitleCase ( http://msdn.microsoft.com/en-us/library/system.globalization.textinfo.totitlecase.aspx ) Въпрос 2: Тук след като вече говориш за методи, което е по-напред в материята по C# (Методи: http://www.introprogramming.info/intro-csharp-book/read-online/glava9-metodi/ ) можеш да видиш ето този линк ( http://www.dotnetperls.com/random-lowercase-letter ), давам ти пример само за букви тъй като за числа е същото и за тях ще ти бъде по-лесно, в примера е показан чрез създаване на метода в отделен клас, но на теб не ти трябва това (поне засега), създаваш един Method (ето тук можеш да видиш как се създава конструкцията на кода - основен метод където се изпълняват нещата и къде се създава статичен метод които ще викаш, тоест извън основния метод: http://pastebin.com/ExNEH7eA ) съответно метода който създаваш ще създава lowercase random letters, за да вземеш така и Capital letters по същия начин ще ти бъде трудно защото местата на буквите в ASCII таблицата са различни, можеш да направиш подобен метод в който обаче въртиш "for" цикъл (loop) от i = A до i <= Z и присвояваш на променливата стойноста на "i". Въпрос 3: За подравняване и подредба на текст можеш да ползваш във Visual Studio CTRL+A; Shift + TAB надявам се тези неща да ти помогнат и успех.

от tsonko_genov (708 точки)