static void Main(string[] args) { Console.InputEncoding = System.Text.Encoding.Unicode; Console.OutputEncoding = System.Text.Encoding.Unicode; System.Threading.Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.InvariantCulture; System.Threading.Thread.CurrentThread.CurrentUICulture = System.Globalization.CultureInfo.InvariantCulture; ContainerVolume containerRequired = new ContainerVolume(); int volume = 0; int i = 0; int oneLiterCount = 0; int fiveLiterCount = 0; int twentyLiterCount = 0; Console.WriteLine("Какой объём сока нужно упаковать?"); if (double.TryParse(Console.ReadLine(), out double parseResult) && parseResult > 0) { volume = (int)Convert.ToInt32(Math.Ceiling(parseResult)); } else { Console.WriteLine($"Введено некорректное число"); Console.ReadKey(); } while ((volume - 20) >= 0) { volume = volume - 20; twentyLiterCount++; containerRequired = containerRequired | ContainerVolume.TwentyLiters; } while ((volume - 5) >= 0) { volume = volume - 5; fiveLiterCount++; containerRequired = containerRequired | ContainerVolume.FiveLiters; } while ((volume - 1) >= 0) { volume = volume - 1; oneLiterCount++; containerRequired = containerRequired | ContainerVolume.OneLiter; } if ((containerRequired & ContainerVolume.TwentyLiters) == ContainerVolume.TwentyLiters) { Console.WriteLine($"20 л: {twentyLiterCount}"); } if ((containerRequired & ContainerVolume.FiveLiters) == ContainerVolume.FiveLiters) { Console.WriteLine($"5 л: {fiveLiterCount}"); } if ((containerRequired & ContainerVolume.OneLiter) == ContainerVolume.OneLiter) { Console.WriteLine($"1 л: {oneLiterCount}"); } Console.ReadKey(); }
/// <summary> /// Serializes the object to JSON. /// </summary> /// <param name="writer">The <see cref="T: Newtonsoft.Json.JsonWriter" /> to write to.</param> /// <param name="obj">The object to serialize to JSON.</param> internal static void Serialize(JsonWriter writer, ContainerVolume obj) { // Required properties are always serialized, optional properties are serialized when not null. writer.WriteStartObject(); writer.WriteProperty(obj.Name, "name", JsonWriterExtensions.WriteStringValue); writer.WriteProperty(obj.DestinationPath, "destinationPath", JsonWriterExtensions.WriteStringValue); if (obj.ReadOnly != null) { writer.WriteProperty(obj.ReadOnly, "readOnly", JsonWriterExtensions.WriteBoolValue); } writer.WriteEndObject(); }
/// <inheritdoc/> public string ToDelimitedString() { CultureInfo culture = CultureInfo.CurrentCulture; return(string.Format( culture, StringHelper.StringFormatSequence(0, 19, Configuration.FieldSeparator), Id, SequenceNumberTestObservationMasterFile.HasValue ? SequenceNumberTestObservationMasterFile.Value.ToString(Consts.NumericFormat, culture) : null, DerivedSpecimen, ContainerDescription != null ? string.Join(Configuration.FieldRepeatSeparator, ContainerDescription.Select(x => x.ToDelimitedString())) : null, ContainerVolume != null ? string.Join(Configuration.FieldRepeatSeparator, ContainerVolume.Select(x => x.ToString(Consts.NumericFormat, culture))) : null, ContainerUnits != null ? string.Join(Configuration.FieldRepeatSeparator, ContainerUnits.Select(x => x.ToDelimitedString())) : null, Specimen?.ToDelimitedString(), Additive?.ToDelimitedString(), Preparation?.ToDelimitedString(), SpecialHandlingRequirements?.ToDelimitedString(), NormalCollectionVolume?.ToDelimitedString(), MinimumCollectionVolume?.ToDelimitedString(), SpecimenRequirements?.ToDelimitedString(), SpecimenPriorities != null ? string.Join(Configuration.FieldRepeatSeparator, SpecimenPriorities) : null, SpecimenRetentionTime?.ToDelimitedString(), SpecimenHandlingCode != null ? string.Join(Configuration.FieldRepeatSeparator, SpecimenHandlingCode.Select(x => x.ToDelimitedString())) : null, SpecimenPreference, PreferredSpecimenAttribtureSequenceId.HasValue ? PreferredSpecimenAttribtureSequenceId.Value.ToString(Consts.NumericFormat, culture) : null, TaxonomicClassificationCode != null ? string.Join(Configuration.FieldRepeatSeparator, TaxonomicClassificationCode.Select(x => x.ToDelimitedString())) : null ).TrimEnd(Configuration.FieldSeparator.ToCharArray())); }