1)
Function check7(a As Range) As Integer
Dim r As Range
Dim i As Integer
For Each r In a
i = i + 1 - Sgn((Abs(r) + 3) Mod 10)
Next
check7 = i
End Function
Excel VBA
2)
А что здесь программировать-то?
Задача сводится к с следующей: Дано два ящика и 7 мячиков. Сколькими можно разместить эти 7 мячиков в этих двух ящиках?
Бросаем все мячики в первый ящик (это первое размещение), затем перекладываем по одному мячика из первого ящика во второй.
Получаем варианты:
7|0
6|1
5|2
4|3
3|4
2|5
1|6
Итого 7 вариантов (варианта 0|7 быть не может, поскольку двузначное число с нуля не начинается).
В общем-то и без вычислений всем очевидно, что разместить 7 мячиков в двух ящиков ровно 7.
Что должна вычислять программа?
c1,c2:byte;
s:boolean;
begin
s:=false
readln(n);
c1:=(n mod 10)+((n div 10) mod 10)+((n div 100) mod 10);
c2:=((n div 1000) mod 10) + ((n div 10000) mod 10) + ((n div 100000) mod 10);
if c1=c2 then s:=true;
if s and ((c2=11) or (c2=22)) then writeln('supershastlivoe') else
if s then writeln('shaslivoe') else writeln('prostoe');
end.