Ввести три числа. Если они могут быть длинами сторон разностороннего остроугольного треугольника, вывести их в порядке возрастания, вычислить площадь полученного треугольника. Сделать нужно в С#.
#include <vector> #include <algorithm> using namespace std; int main() { string s; vector<char> vowels = {'a','e','i','o','u','y'}; cin >> s; int count_letters = 0; //сколько букв одной гласности подряд int count = 0; // сколько букв добавить int state = -1; //для гласности int c = state; // для запоминания for(int i = 0 ;i < s.length(); i++, c = state) { if(find(vowels.begin(),vowels.end(),s[i])!= vowels.end()) state = 0; else state = 1; if(c==state) count_letters++; if(count_letters == 3) { count_letters = 1; //так как одна буква остается справа от разделяющей count++; } } cout << count; }
1. Современный вариант (коротко, быстро и наглядно, кто знает). Так уже начали учить в некоторых школах.
// PascalABC.NET 3.2, сборка 1417 от 28.03.2017 // Внимание! Если программа не работает, обновите версию!
begin var s:=ArrRandom(ReadInteger('n='),1,300).Println. Where(k->(k>=100) and ((k mod 100) div 10=0)); if s.Count>0 then Writeln(s.Max) else Writeln('Нет элементов') end.
2. А так по-прежнему учат в большинстве школ. Стиль "80-х годов века". Долго, длинно, можно наделать ошибок, но по-другому эти учителя сами не могут.
const nn=100; var i,n,max:integer; a:array[1..nn] of integer; begin Write('n='); Read(n); Randomize; max:=0; for i:=1 to n do begin a[i]:=Random(300)+1; Write(a[i],' '); if (a[i]>=100) and ((a[i] mod 100) div 10=0) then if a[i]>max then max:=a[i] end; Writeln; if max>0 then Writeln(max) else Writeln('Нет элементов') end.