var force = 5;
obj.velocity.x += collision.contacts[0].normal.x * force;
obj.velocity.y += collision.contacts[0].normal.y * force;
obj.velocity.z += collision.contacts[0].normal.z * force;
static int EvaluateExpression(string formula)
{
string[] numbers = formula.Split(new char[] { '+', '-' }).Where(e=>e.Trim() != "").ToArray();
string[] symbols = Regex.Matches(formula, "[+-]").Cast<Match>().Select(e => e.Value).ToArray();
if(numbers.Length != symbols.Length+1)
throw new FormatException("Не верное количество знаков");
int result;
int i = -1;
try
{
result = int.Parse(numbers[0]);
for (i = 0; i < symbols.Length; i++){
switch(symbols[i])
{
case "+":
result += int.Parse(numbers[i+1]);
break;
case "-":
result -= int.Parse(numbers[i+1]);
break;
}
}
}catch(FormatException e){
throw new FormatException(String.Format("Не верное число '{0}'", numbers[i+1]));
}
return result;
}
var intval = Convert.ToInt64(myobject);
(long)myobject
class LongNumber
{
public static readonly String[] symbols = { " ", "k", "m", "b", "$", "!", "#" };
List<short> values = new List<short>();
public LongNumber(){
foreach(var s in symbols )
values.Add(0);
}
public string getValue(bool isFull = false){//true полный вывод, false только более
if (isFull)
return String.Join(" ",values.Select((v, i) => v + symbols[i]));
var inx = symbols.Length;
while(inx > 0 && values[--inx] == 0){};
return String.Format("{0} {1}", values[inx], symbols[inx]);
}
public LongNumber add(long value, String sym = " "){//добавить
if (value < 0){
sub(-value);
return this;
}
if (!symbols.Contains(sym))
throw new FormatException("Неизвестный символ");
var inx = symbols.ToList().IndexOf(sym);
value += values[inx];
values[inx] = Convert.ToInt16(value % 1000);
if (value >= 1000)
{
if (inx == symbols.Length - 1)
throw new OverflowException("Достинуто максимально большое значение");
add(Convert.ToInt64(Math.Floor((double)value / 1000)), symbols[inx + 1]);
}
return this;
}
public static LongNumber valToNumber(long val,string sym = " "){//Число в LongNumber
return new LongNumber().add(val,sym);
}
public bool isLarger(LongNumber ln){//Сравнение , true если this больше
for (int i = values.Count - 1; i >= 0; i--)
if (values[i] > ln.values[i])
return true;
else if (values[i] < ln.values[i])
break;
return false;
}
public LongNumber sub(long value, String sym = " "){//вычесть
if (value < 0){
add(-value);
return this;
}
if (!symbols.Contains(sym))
throw new FormatException("Неизвестный символ");
if(LongNumber.valToNumber(value,sym).isLarger(this))
throw new OverflowException("Вычитаемое число больше");
var inx = symbols.ToList().IndexOf(sym);
value = values[inx] - value;
values[inx] = Convert.ToInt16(value%1000);
if (value < 0){
if (values[inx] < 0)
values[inx] += 1000;
sub(Convert.ToInt64(Math.Ceiling(Math.Abs((double)value / 1000))), symbols[inx + 1]);
}
return this;
}
}
class Program
{
static void Main(string[] args)
{
LongNumber ln = new LongNumber();
Console.WriteLine(ln.getValue());
ln.add(1000);
Console.WriteLine(ln.getValue());
ln.add(123456);
Console.WriteLine(ln.getValue(true));
ln.add(1000,"m");
Console.WriteLine(ln.getValue(true));
ln.sub(124456);
Console.WriteLine(ln.getValue(true));
ln.sub(1,"b");
Console.WriteLine(ln.getValue(true));
ln.add(1234564564);
Console.WriteLine(ln.getValue(true));
ln.sub(234565000);
Console.WriteLine(ln.getValue(true));
ln.sub(999999564);
Console.WriteLine(ln.getValue(true));
ln.sub(-123);
Console.WriteLine(ln.getValue());
ln.add(-123);
Console.WriteLine(ln.getValue());
Console.ReadKey();
}
}
0
1 k
456 124k 0m 0b 0$ 0! 0#
456 124k 0m 1b 0$ 0! 0#
0 0k 0m 1b 0$ 0! 0#
0 0k 0m 0b 0$ 0! 0#
564 564k 234m 1b 0$ 0! 0#
564 999k 999m 0b 0$ 0! 0#
0 0k 0m 0b 0$ 0! 0#
123
0
if(random.NextDouble() <= 0.8){
//из questionList
}
else{
//из sentenceList
}
var angle = Math.Atan2(mousey - objy, mousex - objx);
var speed = 10*deltaTime;
objx += Math.cos(angle) * speed;
objy += Math.sin(angle) * speed;
static void Main(string[] args)
{
int i = 24;
while (i++ < 29)
if(i != 27)
Console.WriteLine(i);
Console.ReadKey();
}
static void Main(string[] args)
{
for (int i = 25; i < 30; i++)
if (i != 27)
Console.WriteLine(i);
Console.ReadKey();
}
static void Main(string[] args)
{
ConsoleKey ck ;
do
{
ck = Console.ReadKey().Key;
if (ck == ConsoleKey.D1 || ck == ConsoleKey.NumPad1)
continue;
Console.WriteLine("\nOne more iteration");
} while (ck != ConsoleKey.D0 && ck != ConsoleKey.NumPad0);
}
static void Main(string[] args)
{
int[,] arr = new int[,]{{ 0, 34, -2 }, { 3, -4, 5 } };
int min = arr[0,0];
for(var i =0; i < arr.GetLength(0);i++)
for(var j = 0; j < arr.GetLength(1);j++)
min = Math.Min(min, arr[i,j]);
Console.WriteLine("Min = " + min);
Console.ReadKey();
}
static void Main(string[] args)
{
List<int> dArr = new List<int>();
var rnd = new Random();
int max= 0;
for (int i = 0; i < 7; i++){
dArr.Add(rnd.Next(666));
Console.Write(dArr[i] + " ");
if (i == 0)
max= dArr[i];
else
max= Math.Max(max, dArr[i]);
}
Console.WriteLine("\nMax = " + max);
Console.ReadKey();
}